virtualenv 사용 하여 기본 버전의 Python (2.7)으로 프로젝트를 실행합니다. 한 프로젝트에서 Python 3.4를 사용해야합니다.
나는 brew install python3
그것을 나의 Mac에 설치했다. 이제 새 버전을 사용하는 virtualenv를 어떻게 만듭니 까?
예 : sudo virtualenv envPython3
내가 시도하면 :
virtualenv -p python3 test
나는 얻다:
Running virtualenv with interpreter /usr/local/bin/python3
Using base prefix '/usr/local/Cellar/python3/3.4.0_1/Frameworks/Python.framework/Versions/3.4'
New python executable in test/bin/python3.4
Also creating executable in test/bin/python
Failed to import the site module
Traceback (most recent call last):
File "/Users/user/Documents/workspace/test/test/bin/../lib/python3.4/site.py", line 67, in <module>
import os
File "/Users/user/Documents/workspace/test/test/bin/../lib/python3.4/os.py", line 634, in <module>
from _collections_abc import MutableMapping
ImportError: No module named '_collections_abc'
ERROR: The executable test/bin/python3.4 is not functioning
ERROR: It thinks sys.prefix is '/Users/user/Documents/workspace/test' (should be '/Users/user/Documents/workspace/test/test')
ERROR: virtualenv is not compatible with this system or executable
답변
간단하게 실행
virtualenv -p python3 envname
OP 수정 후 업데이트 :
설명 VIRTUALENV의 영업 이익의 버전에서 버그가 있었다 여기 . 다음을 실행하여 문제를 해결했습니다.
pip install --upgrade virtualenv
답변
Python 3은 가상 환경 ( venv) 을 기본적으로 지원합니다 . 대신 사용하는 것이 좋습니다. 문서를 참조하십시오.
pyvenv 스크립트를 실행하여 가상 환경을 작성하십시오.
pyvenv /path/to/new/virtual/environment
Python 3.6 이상 업데이트 :
으로 pawciobiel가 제대로 코멘트 , pyvenv
있다 되지 파이썬 3.6으로 새로운 방법입니다 :
python3 -m venv /path/to/new/virtual/environment
답변
pyenv를 사용해 보았고 파이썬 버전 (전역, 로컬 또는 폴더 또는 virtualenv)을 전환하는 데 매우 편리합니다.
brew install pyenv
그런 다음 원하는 Python 버전을 설치하십시오.
pyenv install 3.5.0
필요한 인터프리터 버전의 경로로 virtualenv를 작성하십시오.
virtualenv -p /Users/johnny/.pyenv/versions/3.5.0/bin/python3.5 myenv
그게 다야, 버전을 확인하십시오 :
. ./myenv/bin/activate && python -V
pyenv pyenv-virtualenv 용 플러그인도 있지만 어떻게 든 작동하지 않았습니다.
답변
전제 조건을 설치하십시오.
sudo apt-get install python3 python3-pip virtualenvwrapper
Python3 기반 가상 환경을 작성하십시오. 선택적으로 --system-site-packages
플래그를 활성화하십시오 .
mkvirtualenv -p /usr/bin/python3 <venv-name>
가상 환경으로 설정하십시오.
workon <venv-name>
pip
패키지 관리자를 사용하여 다른 요구 사항을 설치하십시오 .
pip install -r requirements.txt
pip install <package_name>
여러 python 프로젝트를 동시에 작업 할 때는 일반적 pdbpp
으로 전역과 같은 공통 패키지를 설치 한 다음 virtualenv에서 재사용하는 것이 좋습니다 .
이 기술을 사용하면 최소한의 디스크 공간과 네트워크 대역폭을 사용하는 것 외에도 패키지를 가져오고 설치하는 데 소요되는 많은 시간이 절약됩니다.
sudo -H pip3 -v install pdbpp
mkvirtualenv -p $(which python3) --system-site-packages <venv-name>
장고 관련 지침
시스템 전체의 파이썬 패키지 --system-site-packages
가 많으면 장고 시작 속도가 크게 느려지는 것을 알았으므로 개발 중에 특히 플래그를 사용하지 않는 것이 좋습니다 . Django 환경 초기화가 수동으로 시스템 경로에서 모든 사이트 패키지를 스캔하고 추가한다고 가정합니다. 심지어 python manage.py shell
매우 느려집니다.
그 실험은 어떤 옵션이 더 잘 작동한다고 말했습니다. --system-site-packages
Django 프로젝트의 플래그를 건너 뛰는 것이 안전 할 수 있습니다.
답변
virtualenv --python=/usr/bin/python3 <name of env>
나를 위해 일했다.
답변
환경을 만들면서 특정 버전의 Python 을 지정할 수 있습니다 . virtualenv.py
에서 언급되었습니다.
virtualenv --python=python3.5 envname
경우에 따라 실행 파일의 전체 경로 여야합니다.
virtualenv --python=/Users/username/.pyenv/versions/3.6.0/bin/python3.6 envname
어떻게 -p
작동
parser.add_option(
'-p', '--python',
dest='python',
metavar='PYTHON_EXE',
help='The Python interpreter to use, e.g., --python=python3.5 will use the python3.5 '
'interpreter to create the new environment. The default is the interpreter that '
'virtualenv was installed with (%s)' % sys.executable)
답변
나는 같은 ERROR
메시지를 받았다 . 내 경우에는 tbrisker의 솔루션이 작동하지 않았습니다. 대신 이것은 문제를 해결했습니다.
$ python3 -m venv .env