Как запустить python 2 и 3 в Windows 7?

Есть ли способ установить python 3 над установкой python 2 без разрушения чего-либо? Основная проблема заключается в том, что у меня есть код, который работает под "python xxxxx.py abc123". Есть ли способ изменить python 3 как "python3 xxxx.py abc123"? Та же команда python - это конфликт

Ответ 1

Существует лучший способ сосуществования/запуска Python 2 и Python 3 в Windows. Python 3.3 представил пусковую установку Python для Windows (см. http://www.python.org/dev/peps/pep-0397/).

После установки Python 3.3 файлы py.exe и pyw.exe будут скопированы в ваш каталог c:\Windows, а ассоциации будут установлены для расширения .py, чтобы он использовал пусковую установку. По умолчанию Python 2 запускается для py script.py. py -3 script.py запускает Python 3. (Это также означает, что никакой путь для Python не должен быть добавлен в среду - c:\Windows уже находится в PATH.)

Лучше всего то, что #!python2 в script вызывает лазирование через Python 2, #!python3 вызывает запуск script через Python 3. Таким образом, вы можете использовать скрипты для обеих версий Python, и вы можете унифицировать их - py script.py или просто щелкнув значок script.

Есть больше деталей, но это в основном то, что вам нужно.

Обновление:. При использовании пусковой установки Python для Windows вы также можете запустить свой Python script из cmd, набрав > script.py (который явно не набирает py - имя пусковой панели Python - перед именем script) или даже путем ввода имени без расширения .py (это просто > script).

Таким образом, все начинает напоминать Unix-способ именования скриптов (без необходимости расширения); однако при создании файла script вам необходимо добавить расширение .py.

(Да, это немного более беспорядочно, чем подход Unix. В этом разница между подходами "Подумай первым!" и "Продать первым!" в разработках ОС. В любом случае, моя прелесть в развитии Python команда, чтобы выжать лучшее из Windows - выпуская пусковую установку Python для Windows.)

Ответ 2

Не уверен, что он будет соответствовать вашим потребностям, но вы должны взглянуть на virtualenv: http://www.virtualenv.org/en/latest/

Это позволит создавать отдельные среды для Python 2 и 3 (используя флаг -p). Если ваш случай использования - это то, для чего это не сработает, обновите вопрос с помощью некоторых дополнительных спецификаций, и я уверен, что вы получите другие предложения.

Ответ 3

Предполагая, что вы устанавливаете python3 в отдельный каталог, вы также можете переименовать исполняемый файл python 3 в файл python3.exe.

Ответ 4

Вам нужно изменить переменную среды, чтобы включить в нее путь Python 3 или Python 2.