virtualenv와 함께 다른 Python 버전 사용
지정된 버전의 Python을 위한 가상 환경을 만들려면 어떻게 해야 합니까?
메모: Python 3.3+의 경우 아래 Aelfin의 답변을 참조하십시오.
하다를 사용하세요.--python
짧다)-p
Virtualenv는 Python을 사용합니다.하다
virtualenv --python="/usr/bin/python2.6" "/path/to/new/virtualenv/"
Python 3 이후 이 문서에서는 다음을 사용하여 가상 환경을 만들 것을 제안합니다.
python3 -m venv "my_env_name"
해 주세요.venv
에서는 다른 버전의 Python을 사용한 가상 환경 작성이 허용되지 않습니다.이를 위해 패키지를 설치하고 사용합니다.
쓸모없는 정보
이 스크립트를 사용하여 가상 환경을 만들 수 있습니다.
pyvenv "/path/to/new/virtual/environment"
Python 3.6 이후 사용되지 않습니다.
하고 Python을 작성해야 할때할 수 .venv
Python python python python python python python python python python python 。Python 2.7.9 。
mkdir ~/src
wget http://www.python.org/ftp/python/2.7.9/Python-2.7.9.tgz
tar -zxvf Python-2.7.9.tgz
cd Python-2.7.9
mkdir ~/.localpython
./configure --prefix=$HOME/.localpython
make
make install
가상 환경
cd ~/src
wget https://pypi.python.org/packages/5c/79/5dae7494b9f5ed061cff9a8ab8d6e1f02db352f3facf907d9eb614fb80e9/virtualenv-15.0.2.tar.gz#md5=0ed59863994daf1292827ffdbba80a63
tar -zxvf virtualenv-15.0.2.tar.gz
cd virtualenv-15.0.2/
~/.localpython/bin/python setup.py install
virtualenv ve -p $HOME/.localpython/bin/python2.7
source ve/bin/activate
당연히 이는 작업 및 배포 환경과 동일한 환경을 복제하려는 모든 상황에 적용할 수 있습니다.
더 쉬운 방법이 있어요
virtualenv venv --python=python2.7
코멘트 덕분에 python2.7이 시스템레벨에 설치되어 있는 경우에만 동작합니다(예: /usr/bin/python2.7).
그렇지 않으면 홈브루를 사용하는 경우 경로를 사용하여 원하는 것을 제공할 수 있습니다.
virtualenv venv --python=/usr/local/bin/python
python 설치 경로는 다음과 같습니다.
which python
이것은 python 3에서도 동작합니다.
which python3
>> /usr/local/bin/python3
virtualenv venv --python=/usr/local/bin/python3
최종 응축처:
virtualenv venv -p `which python`
virtualenv venv -p `which python3`
virtualenv --python=/usr/bin/python2.6 <path/to/myvirtualenv>
Windows 에서는, 다음과 같이 동작합니다.
virtualenv --python=c:\Python25\python.exe envname
★★★★★★★★★★★★★★★★★ python.exe
WindowsError: [Error 5] Access is denied
.6 Python2.1이 .5virtualenv 1.6.1을 .
Mac OSX 10.6.8(Snow Leopard):
할 때 1) 할 때pip install virtualenv
버전 중 하나와 python은 python 버전 중 하나에 관련되어 virtualenv
비단뱀 수 있다
$ which pip
어떤 버전의 비단뱀인지 확인하려고요.다음과 같은 것이 표시되는 경우
$ which pip
/usr/local/bin/pip
다음 작업을 수행합니다.
$ ls -al /usr/local/bin/pip
lrwxrwxr-x 1 root admin 65 Apr 10 2015 /usr/local/bin/pip ->
../../../Library/Frameworks/Python.framework/Versions/2.7/bin/pip
출력에 python 버전이 표시됩니다.
디폴트로는 사용자가 작성하는 새로운 환경에 사용되는 python 버전이 됩니다.의 버전의 python을, 에서 사용할 수 있습니다.-p flag
$ virtualenv -p python3.2 my_env
Running virtualenv with interpreter /usr/local/bin/python3.2
New python executable in my_env/bin/python
Installing setuptools, pip...done.
virtualenv my_env
현재 디렉터리에 Python 실행 파일 및 다른 패키지를 설치하는 데 사용할 수 있는 pip [명령어] 복사본을 포함하는 폴더를 만듭니다.
http://docs.python-guide.org/en/latest/dev/virtualenvs/
virtualenv
python을 컴퓨터 상의 위치에서 새로 생성된 my_env/bin/ 디렉토리에 복사하기만 하면 됩니다.
은 2) python에 ./usr/bin
인스톨 한 다양한 python 버전은, 디폴트로 다음의 장소에 인스톨 되고 있습니다.
/usr/local/bin
가지 이름이 . 3) 버마왕이다.python2.7
""python3.2
풀 패스가 아닌 이러한 이름을 사용할 수 있습니다.
========Virtual Env Wrapper=========
시키는 데 .1) virtualenvwrapper가 동작하지 .이 가 넣은 입니다.~/.bash_profile
export WORKON_HOME=$HOME/.virtualenvs
export PROJECT_HOME=$HOME/django_projects #Not very important -- mkproject command uses this
#Added the following based on:
#http://stackoverflow.com/questions/19665327/virtualenvwrapper-installation-snow-leopard-python
export VIRTUALENVWRAPPER_PYTHON=/usr/local/bin/python2.7
#source /usr/local/bin/virtualenvwrapper.sh
source /Library/Frameworks/Python.framework/Versions/2.7/bin/virtualenvwrapper.sh
더 2) »-p option
virtualenvwrapper에서는 다음과 같이 동작합니다.새로운 환경에서 사용할 python interpreter의 풀 경로를 지정해야 합니다(기본 python 버전을 사용하지 않을 경우).
$ mkvirtualenv -p /usr/local/bin/python3.2 my_env
Running virtualenv with interpreter /usr/local/bin/python3
New python executable in my_env/bin/python
Installing setuptools, pip...done.
Usage: source deactivate
removes the 'bin' directory of the environment activated with 'source
activate' from PATH.
virtualenv와 달리 virtualenvwrapper는 $WORKON_HOME 환경변수로 지정된 위치에 환경을 만듭니다.모든 환경을 한 곳에 보관합니다.
[2019년 11월] Python 3.8 기반의 Arch Linux 시스템에 Python 3.7 환경(env)을 설치해야 했습니다.Python 3.7은 더 이상 시스템에 탑재되어 있지 않기 때문에 Python을 다운그레이드하여 필요한 패키지를 설치할 수 없었습니다.
게다가 그 패키지 / Python 3.7을 가상 환경(venv) 내에서 사용하고 싶다고 생각하고 있었습니다.이렇게 했어요.
Python 버전 소스 파일 다운로드:
저는 Python 3.7.4 소스 파일을
로.
/mnt/Vancouver/apps/python_versions/src/Python-3.7.4.tgz
그런 다음 아카이브(소스 파일)를 추출했습니다.
/mnt/Vancouver/apps/python_versions/src/Python-3.7.4/
설치:
[메모: 내 시스템 env에서는 venv가 아니라]
cd /mnt/Vancouver/apps/python_versions/src/Python-3.7.4/
time ./configure ## 17 sec
time make ## 1 min 51 sec
time sudo make install ## 18 sec
time make clean ## 0.3 sec
설치된 Python 버전을 확인합니다.
$ which python
/usr/bin/python
$ python --version
Python 3.8.0
$ which python3.7
/usr/local/bin/python3.7
$ python ## Python 3.8 [system / env]
Python 3.8.0 (default, Oct 23 2019, 18:51:26)
[GCC 9.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
$ python3.7 ## newly-installed Python 3.7 package
Python 3.7.4 (default, Nov 20 2019, 11:36:53)
[GCC 9.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> print(sys.version)
3.7.4 (default, Nov 20 2019, 11:36:53)
[GCC 9.2.0]
>>>
$ python3.7 --version
Python 3.7.4
특정 Python 버전에 대한 venv를 만드는 방법:
https://docs.python.org/3/tutorial/venv.html
12.2. 가상화 환경 구축
및 은 " " "라고 불립니다.
venv
venv
는 일반적으로 사용 가능한 최신 버전의 Python을 설치합니다.시스템에 여러 버전의 Python이 있는 경우 python3 또는 원하는 버전을 실행하여 특정 Python 버전을 선택할 수 있습니다.가상 환경을 작성하려면 가상 환경을 배치할 디렉토리를 결정하고 디렉토리 경로를 가진 스크립트로 venv 모듈을 실행합니다.
python3 -m venv tutorial-env
하면 " " " 가 생성됩니다.
tutorial-env
디렉토리가 존재하지 않는 경우는, Python 인터프리터, 표준 라이브러리, 및 다양한 서포트 파일의 카피를 포함한 디렉토리를 작성합니다.
Python 3.7 venv를 만듭니다(Python 3.8 운영 환경/시스템에서):
python3.7 -m venv ~/venv/py3.7 ## create Python 3.7-based venv
source ~/venv/py3.7/bin/activate ## activate that venv
deactivate ## deactivate that venv (when done, there)
★★★에 .~/.bashrc
:
alias p37='echo " [Python 3.7 venv (source ~/venv/py3.7/bin/activate)]" && source ~/venv/py3.7/bin/activate'
Python 3.7 venv 테스트:
$ p37
[Python 3.7 venv (source ~/venv/py3.7/bin/activate)]
(py3.7)$ python --version
Python 3.7.4
(py3.7)$ python
Python 3.7.4 (default, Nov 20 2019, 11:36:53)
[GCC 9.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> print(sys.version)
3.7.4 (default, Nov 20 2019, 11:36:53)
[GCC 9.2.0]
>>>
Python 버전이 설치되어 있어야 합니다.만약 당신이 그것을 가지고 있다면, 기본적으로,
virtualenv를 사용하면
virtualenv --python=python3.8 env/place/you/want/to/save/to
정력있게
python3.8 -m venv env/place/you/want/to/save/to
위의 예는 python3.8용입니다.컴퓨터에 설치되어 있는 가상환경의 버전이 다르도록 변경할 수 있습니다.
virtualenv python 2.7 python 2.7 python 。 이 말을 잘 요.python3.2
, 과 같이 업데이트를 해야 합니다
$ virtualenv --python=/usr/bin/python3.2 name_of_your_virtualenv
다음으로 Virtual Env를 활성화 합니다.
$ source activate name_of_your_virtualenv
하다, 하다, 하다, 하다.python --version
셸에서 버전이 업데이트되었는지 확인합니다.
이 2개의 명령어는 정상적으로 동작합니다.
virtualenv -p python2 myenv
의 경우python2의 경우)
virtualenv -p python3 myenv
의 경우python3의 경우)
요.virtualenv
비단뱀예를 들어 다음과 같습니다.
python3 -m virtualenv venv
또는 virtualenv 경로를 직접 가리킬 수도 있습니다(예: Windows의 경우:
c:\Python34\Scripts\virtualenv.exe venv
실행 시:
venv/bin/python
Python 3.5.1 (v3.5.1:37a07cee5969, Dec 5 2015, 21:12:44)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>
가상 환경에 설치된 python 버전을 볼 수 있습니다.
-p
어프로치는 잘 동작하지만 매번 사용하는 것을 기억해야 합니다.일반적으로 새로운 버전의 Python으로 전환하는 것이 목표라면, 그것은 귀찮은 일이며, 실수로 이어질 수도 있습니다.
은 '하다'와 같은 입니다.-p
설정해 주세요.~/.bashrc
파일 또는 로그인 세션 환경변수를 관리하는 장소:
export VIRTUALENV_PYTHON=/path/to/desired/version
★★★★★★★★★★★★★★★.virtualenv
않은 합니다.-p
커맨드 라인에 표시됩니다.
Mac에서는 pyenv와 virtualenvwrapper를 사용합니다.새로운 가상 환경을 만들어야 했습니다.홈브루가 필요합니다.Mac에 탑재되어 있다면 설치했을 것으로 생각됩니다만, 단지 재미삼아 사용하고 있을 뿐입니다.
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew install pyenv
pyenv install 2.7.10
pyenv global 2.7.10
export PATH=/Users/{USERNAME}/.pyenv/versions/2.7.10/bin:$PATH
mkvirtualenv -p ~/.pyenv/versions/2.7.10/bin/python {virtual_env_name}
또, 우선 요건을 동결하고, 다음의 기능을 사용해 간단하게 새로운 virtualenv에 재인스톨 할 수 있었습니다.
pip install -r requirements.txt
명령어 대체를 사용하여 python2를 찾는 것이 더 쉽습니다.
virtualenv -p $(which python2) <path/to/new/virtualenv/>
또는 virtualenvwrapper를 사용하는 경우:
mkvirtualenv -p $(which python2) <env_name>
Mac(High Sierra)의 경우 python3에 virtualenv를 설치하고 python2용 virtualenv를 만듭니다.
$ python3 -m pip install virtualenv
$ python3 -m virtualenv --python=python2 vp27
$ source vp27/bin/activate
(vp27)$ python --version
Python 2.7.14
여러 답변에서 이미 언급했듯이 virtualenv를 사용하는 것은 깨끗한 솔루션입니다.단, python의 에일리어스가 bash_aliases로 설정되어 있는 경우 다음과 같은 작은 함정이 있습니다.
python=python3.6
이 별칭은 가상 환경 내부에서도 사용됩니다. 이 에서는 " "를 실행합니다.python -V
「」를 출력합니다.3.6
환경 조성에 사용되는 인터프리터에 관계없이 다음을 수행합니다.
virtualenv venv --python=pythonX.X
윈도 3있는 의 는, 런처 python 3.3 의 Windows 를 할 수 .py
훨씬 더 쉽게 할 수 있습니다.비단뱀
py -[my version] -m venv env
가상 인 '하다'가 .env
디렉토리에서 python을 사용하여 python을 [my version]
를 들어 다음과 같습니다 §:
py -3.7 -m venv env
./env/Scripts/activate
를 통해 가상 인 음음 음음 음음 음음 음음 ment thismentmentment ment thisment mentmentmentmentmentmentmentment 환경이 됩니다.env
을 사용하여.7시 정각을 사용법
Windows의 경우:
py -3.4x32 -m venv venv34
아니면
py -2.6.2 -m venv venv26
이것은 적절한 python 실행 파일을 찾을 수 있는 런처를 사용합니다(설치되어 있다고 가정).
이 답변을 Windows에 활용했습니다.
https://stackoverflow.com/a/22793687/15435022
py -3.4 -m venv c:\path\to\wherever\you\want\it
Linux용 Windows 서브시스템의 경우:
python3용 환경 생성:
virtualenv --python=/usr/bin/python3 env
활성화:
source env/bin/activate
pyenv를 사용하여 python 버전을 관리합니다.
pyenv install 3.7.3
pyenv local 3.7.3
Python 버전을 확인합니다.
$ python --version
Python 3.7.3
venv를 사용하여 가상 환경 생성:
python -m venv .
다음으로 가상 환경을 활성화합니다.
source bin/activate
Python 버전을 확인합니다.
$ python --version
Python 3.7.3
이전 가상 환경을 제거해야 할 수 있습니다.
rm -rf bin
2020년 말:
virtualenv(추가 이점: 가능한 모든 python 버전에서)를 사용하는 가장 심리스한 경험은 pyenv 및 해당 (추가) pyenv-virtualenv 플러그인(cf https://realpython.com/intro-to-pyenv/ #virtual-environments-and-pyenv)을 사용하는 것입니다.
: 사법 usage :pyenv virtualenv <python_version> <environment_name>
설치:
- 먼저 모든 전제 조건이 충족되었는지 확인합니다(OS에 따라 다름).https://github.com/pyenv/pyenv/wiki/Common-build-problems#prerequisites
curl https://pyenv.run | bash
exec $SHELL
cf https://github.com/pyenv/pyenv-installer
그렇긴 하지만, 요즘은 다음을 사용하는 대신 가능한 최선의 대안입니다.virtualenv
(그리고)pip
)는 시(와 함께)가 됩니다.pyenv
비단뱀
다른PyPA의 배후에 있는 에 의해 입니다.pip
PyPI)와 함께 5월말부터 발매를 재개했다(그전에는 2018년말 이후 발매되지 않았다).
Python 3.7을 사용하고 있으며 Python 3.6.6의 프로젝트를 다운그레이드하고 싶은 Windows 10에서의 사용에 도움이 되었습니다.
「venv」를 사용해 「venv」라고 불리는 새로운 환경을 작성해, https://www.python.org/downloads/windows/ 에서 다운로드해 「Download Windows x86-64 executable instra-」를 인스톨 해, 환경을 작성하는 디렉토리에서 다음의 커맨드 라인을 사용했습니다.
>C:\Users\...\Python\Python36\python.exe -m venv venv
마지막으로 다음 명령줄을 사용하여 환경을 활성화했습니다.
>venv\Scripts\activate.bat
다음 번호로 python 버전을 확인합니다.
>python --version
..
Linux Ubuntu 21.04(현재 Python 3.9.5)에서는 Python 3.7.8의 가상환경이 필요했습니다.작업을 시작하기 위한 전체 단계:
원하는 Python 버전 소스를 찾으십시오. 예를 들어 3.7.8은 https://www.python.org/downloads/release/python-378/에서 확인할 수 있습니다.
Gziped 소스 tarball 다운로드
★★★★★★★★★★★★★★★★★★★로 압축 해제tar zxvf Python-3.7.8.tgz
가능)(3.7.8)
에 복사합니다. /usr/bin은 /usr/bin이다.sudo cp -r Python-3.7.8 /usr/bin
cd /usr/bin/Python-3.7.8/
, 내용을 .ls
sudo time ./configure
sudo time make
time sudo make install
time make clean
Python 설정 및 보고 방법을 확인합니다.
which python
python --version
모두 프라이머리 인스톨에 관한 것입니다(Python 3.9.5는 이쪽).
새 설치를 확인하려면:
which python 3.7
python3.7 --version
모두 3.7.8 설치와 관련된 것입니다.
이를 실행하여 확인하려면 다음 작업을 수행합니다.
python3.7
exit()
설치 venv:
sudo apt install venv
venv를 작성하려면 (아마도 repo에서 .gitignore에 .venv를 추가합니다)
python3.7 -m venv .venv
venv를 활성화하려면:
source .venv/bin/activate
버전 확인:
python --version
네, 위의 답변은 정확하며 Linux 및 MAC OS X 등의 Unix 기반 시스템에서 정상적으로 작동합니다.
다음 명령어로 Python2 & Python3용 virtualenv를 작성하려고 했습니다.
여기서는 Python2와 Python3의 이름으로 venv2와 venv3를 각각 사용했습니다.
Python2 »
MacBook-Pro-2:~ admin$ virtualenv venv2 --python=`which python2`
Running virtualenv with interpreter /usr/local/bin/python2
New python executable in /Users/admin/venv2/bin/python
Installing setuptools, pip, wheel...done.
MacBook-Pro-2:~ admin$
MacBook-Pro-2:~ admin$ ls venv2/bin/
activate easy_install pip2.7 python2.7
activate.csh easy_install-2.7 python wheel
activate.fish pip python-config
activate_this.py pip2 python2
MacBook-Pro-2:~ admin$
Python3 »
MacBook-Pro-2:~ admin$ virtualenv venv3 --python=`which python3`
Running virtualenv with interpreter /usr/local/bin/python3
Using base prefix '/Library/Frameworks/Python.framework/Versions/3.6'
New python executable in /Users/admin/venv3/bin/python3
Also creating executable in /Users/admin/venv3/bin/python
Installing setuptools, pip, wheel...done.
MacBook-Pro-2:~ admin$
MacBook-Pro-2:~ admin$ ls venv3/bin/
activate easy_install pip3.6 python3.6
activate.csh easy_install-3.6 python wheel
activate.fish pip python-config
activate_this.py pip3 python3
MacBook-Pro-2:~ admin$
Python 설치 위치 확인 중
MacBook-Pro-2:~ admin$ which python2
/usr/local/bin/python2
MacBook-Pro-2:~ admin$
MacBook-Pro-2:~ admin$ which python3
/usr/local/bin/python3
MacBook-Pro-2:~ admin$
그것은 나에게 효과가 있었다.
sudo apt-get install python3-minimal
virtualenv --no-site-packages --distribute -p /usr/bin/python3 ~/.virtualenvs/py3
virtualenv -p python3 myenv
이것은 virtualenv의 버그입니다.pip을 업그레이드하는 것만으로 해결할 수리가 됩니다.
pip install --upgrade virtualenv
에 Windows를 해야 합니다..exe
virtualenv -p=C:\Python27\python2.exe <envname>
언급URL : https://stackoverflow.com/questions/1534210/use-different-python-version-with-virtualenv
'programing' 카테고리의 다른 글
셸 스크립트를 통한 echo 명령어로 mysql_secure_install 자동화 (0) | 2022.10.31 |
---|---|
MySQL Select last 7days (0) | 2022.10.31 |
Scala의 Java 컬렉션에서 반복 (0) | 2022.10.31 |
모든 데이터를 vuex 상태로 저장해야 합니까? (0) | 2022.10.31 |
primitive int 목록을 작성하시겠습니까? (0) | 2022.10.31 |