Несколько версий Python с использованием virtualenv -p (и virtualenvwrapper-win) в Windows

Я хотел бы использовать несколько версий Python (мне нужны 2.5 и 2.7, но было бы неплохо иметь и 3.2). В Windows XP!

Я бы хотел использовать virtualenvwrapper-win вместо virtualenv -p

Вот метод для Unix: Использовать другую версию Python с virtualenv

Применяется ли тот же метод для virtualenvwrapper-win? Источник для mkvirtualenv, похоже, передает аргументы в virtualenv в строке 35: >https://github.com/davidmarble/virtualenvwrapper-win/blob/master/scripts/mkvirtualenv.bat

Я подумал, что хотел бы спросить, сделал ли кто-нибудь это (и рассказать другим, что они могут это сделать), задав этот вопрос, прежде чем пытаться (и потенциально испортить мою среду Python).

Если вы сделали это, на что следует обратить внимание? Могу ли я использовать установку Python ActiveState для моей второй версии Python?


person TaiwanGrapefruitTea    schedule 04.01.2012    source источник
comment
см. мой ответ за сентябрь 2013 г. ниже, чтобы узнать о моем опыте установки.   -  person TaiwanGrapefruitTea    schedule 28.09.2013


Ответы (3)


Virtualenvwrapper передает флаги командной строки непосредственно в virtualenv. mkvirtualenv --python=c:/your/path/to/python2.5 настроит вашу виртуальную среду с помощью python 2.5. Я делал это много раз.

Тем не менее, это избавит вас от проблем позже, если вы установите как можно меньше пакетов за пределами вашей виртуальной среды. (вы всегда можете удалить виртуальную среду без особых проблем, сложнее полностью удалить пакеты/изменить пути за пределами одного) Несколько версий python могут заставить pip и easy_install делать странные вещи. В виртуальной среде вам не нужно об этом беспокоиться.

Вам не нужно беспокоиться о том, чтобы испортить вашу среду Python, по крайней мере, не с virtualenv, легко добавлять или удалять виртуальные среды. Флаг --python будет работать с любым исполняемым файлом Python (он просто устанавливает другой набор сценариев в виртуальной среде), поэтому он должен работать с ActiveState.

person Jeff Tratner    schedule 09.04.2012
comment
Это решило мою проблему выбора моей версии Python во время создания моей среды. - person Guerry; 12.11.2013

Что касается установки дополнительных версий (несколько версий) Python, я установил ActiveState Python 2.7 и 3.3. Они установлены в разных каталогах в области c:/.

В настоящее время 2.7 устанавливается как Python по умолчанию. Доступ к более старому python можно получить как python25 в командной строке.

Python 3.3 не устанавливается как Python по умолчанию. Кроме того, вы должны использовать полное имя пути или добавить его к пути самостоятельно (или включить параметр в процессе установки).

Однако в целом было довольно легко установить несколько версий Python с помощью ActiveState.

Для виртуалэнв:

python 2.7: были некоторые проблемы с отсутствием pip. Кажется, можно решить эту проблему, запустив «easy_install pip» внутри virtualenv.

python 3.3: были проблемы с командой mkvirtualenv: это приводит к сбою python! Я не занимался этим, так как мне это сейчас не нужно (но если кто-нибудь знает, в чем проблема и решение, это было бы здорово!)

Редактирование от 13 октября 2013 г.: мне пришлось переустановить virtualenvwrapper-win в среду python27. После этого python27 virtualenv работал нормально.

person TaiwanGrapefruitTea    schedule 28.09.2013

Я нашел этот проект очень полезным.

https://github.com/pyenv/pyenv

Он автоматизирует установку нескольких версий Python и управление ими.
Таким образом, вы можете установить Python 2.4.3, 2.5.2 и 2.7.1.
Затем вы можете переключаться между версиями Python, которые хотите запускать, и тестировать свои приложения Python. с.

Он также имеет вспомогательные сценарии
https://github.com/pyenv/pyenv-virtualenvwrapper
https://github.com/pyenv/pyenv-virtualenv

person nelaaro    schedule 19.04.2017