virtualenvwrapper и Python 3
Я установил Python 3.3.1 на Ubuntu Lucid и успешно создал virtualenv, как показано ниже
virtualenv envpy331 --python=/usr/local/bin/python3.3
это создало папку envpy331
в моем доме реж.
у меня тоже есть virtualenvwrapper
установлен. Но только в документах 2.4-2.7
версии python
поддерживаются.. Кто-нибудь пытался организовать python3
virtualenv? Если так, можете ли вы сказать мне, как?
8 ответов
Последняя версия virtualenvwrapper протестирована под Python3.2. Скорее всего, он будет работать и с Python3.3.
Если у вас уже установлен python3, а также virtualenvwrapper, единственное, что вам нужно сделать, чтобы использовать python3 в виртуальной среде, - это создать среду, используя:
which python3 #Output: /usr/bin/python3
mkvirtualenv --python=/usr/bin/python3 nameOfEnvironment
Или (по крайней мере на OSX с использованием brew):
mkvirtualenv --python=`which python3` nameOfEnvironment
Начните использовать среду, и вы увидите, что как только вы наберете python, вы начнете использовать python3
Вы можете заставить virtualenvwrapper использовать пользовательский двоичный файл Python вместо того, с которым запускается virtualenvwrapper. Для этого вам нужно использовать переменную VIRTUALENV_PYTHON, которую использует virtualenv:
$ export VIRTUALENV_PYTHON=/usr/bin/python3
$ mkvirtualenv -a myproject myenv
Running virtualenv with interpreter /usr/bin/python3
New python executable in myenv/bin/python3
Also creating executable in myenv/bin/python
(myenv)$ python
Python 3.2.3 (default, Oct 19 2012, 19:53:16)
[GCC 4.7.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
На Ubuntu; с помощью mkvirtualenv -p python3 env_name
загружает virtualenv с помощью python3.
Внутри env используйте python --version
проверять.
Вы можете добавить это к вашему.bash_profile или подобному:
alias mkvirtualenv3='mkvirtualenv --python=`which python3`'
Тогда используйте mkvirtualenv3
вместо mkvirtualenv
когда вы хотите создать среду Python 3.
virtualenvwrapper теперь позволяет вам указать исполняемый файл python без пути.
Итак (по крайней мере на OSX)mkvirtualenv --python=python3 nameOfEnvironment
будет достаточно.
Я считаю, что работает
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
а также
export VIRTUALENVWRAPPER_VIRTUALENV=/usr/bin/virtualenv-3.4
в командной строке на Ubuntu заставляет mkvirtualenv использовать python3 и virtualenv-3.4. Еще надо сделать
mkvirtualenv --python=/usr/bin/python3 nameOfEnvironment
создать окружающую среду. Предполагается, что у вас есть python3 в /usr/bin/python3 и virtualenv-3.4 в /usr/local/bin/virtualenv-3.4.
Я добавил export VIRTUALENV_PYTHON=/usr/bin/python3
к моему ~/.bashrc
нравится:
export WORKON_HOME=$HOME/.virtualenvs
export VIRTUALENV_PYTHON=/usr/bin/python3
source /usr/local/bin/virtualenvwrapper.sh
затем беги source .bashrc
и вы можете указать версию python для каждого нового env mkvirtualenv --python=python2 env_name