Странная проблема с несколькими установками Python в Windows - PullRequest
1 голос
/ 08 ноября 2011

У меня есть 3 версии Python (2.5, 2.7, 3.2), установленные на компьютере с Windows, 2.5 - это версия по умолчанию (первая в PATH и по умолчанию для открытого действия).

Теперь странная вещь появляется, когда я запускаю скрипт python с filename.py (без указания интерпретатора) или щелкая файл в Проводнике: Python 2.5 запускает скрипт (ожидается), НО Python 2.7 PATH вставляется перед исходным ПУТЬ системы.

Тем не менее, если я смотрю на командную строку, кажется, что Python 2.5 был выполнен.

Откуда берется первая запись в PATH (C:\Ptyhon27\), могу вас заверить, что она добавляется при запуске скриптов, но кем?

enter image description here

Как вы уже заметили, у меня есть несколько версий Python в PATH, это не что-то необычное, потому что вместо этого они могут иметь версионные исполняемые файлы и потому, что Windows всегда выбирает первую из них в PATH.

Ответы [ 3 ]

1 голос
/ 08 ноября 2011

Вас может заинтересовать проект Python Launcher для Windows , также известный как PEP 397. Установите его и удалите все каталоги Python из PATH, оставив только модуль запуска, и используйте py / pyw вместо python / pythonw.

1 голос
/ 08 ноября 2011

Если присмотреться, кажется, у вас есть различные версии Python в переменной среды PATH.

Стандартный установщик Python для Windows не добавляет себя в PATH;Я всегда делаю это вручную для той версии Python, которую я хочу использовать по умолчанию.Если вы используете другой установщик Python (например, ActiveState или Enthought), это может быть причиной, но я этого не пробовал.

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

0 голосов
/ 08 ноября 2011

Ааа, думаю, у меня это есть! Вы не упомянули, как именно вы используете Python ...

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

Если вам нужна дополнительная помощь, пожалуйста, дайте подробное описание того, как вы запускаете Python, когда это происходит.

...