Подтвердить что ты не робот

Изменение интерпретатора Python по умолчанию в Windows XP

У меня две версии python: Python 2.5 и Python 2.7. Когда я настраиваю django, я хочу использовать Python 2.7, но django каким-то образом использует Python 2.5.

Как я могу убедиться, что django использует Python 2.7? Я использую Windows XP

4b9b3361

Ответ 1

Измените переменную системной среды PATH, чтобы указать на версию Python, которую вы хотите использовать.

Ответ 2

Изменение PATH поможет, если вы всегда вызываете python напрямую, а не полагаетесь на файловая ассоциация.

Например: "python foo.py" будет запускать 'foo' script с помощью того, что python является первым в вашей PATH.

Однако, если вы просто запустите "foo.py", обработчик, связанный в реестре, для этого расширения файла, будет первым, вызывающим.

В вашем случае, похоже, это будет python 2.5. Посмотрите, открыв regedit и проверив значения:

HKEY_CLASSES_ROOT\Python.File\shell\open\command

Значение (по умолчанию), вероятно, будет похоже на "C:\Python25\python.exe" "%1" %*

Быстрое (и грязное?) исправление для вас было бы изменить эти значения на версию python, которую вы действительно хотите.

Лучшим решением было бы сделать что-то вроде того, что указано в этом запросе функции:

http://bugs.python.org/issue4485

С тех пор, пока у вас есть права администратора, вы можете переключиться, как вам нужно, указав на ссылку на нужную вам версию.

Ответ 3

Сделайте два простых файла .cmd:

python25.cmd:

@echo off
set PYTHONHOME=c:\python25
set PATH=%PATH%;c:\python25

python27.cmd:

@echo off
set PYTHONHOME=c:\python27
set PATH=%PATH%;c:\python27

Теперь вы можете переключаться между Python 2.5 и 2.7.:)

Ответ 4

Установщик Python не изменяет переменную среды PATH под окнами. При вводе чего-то типа python setup.py окна сначала ищут python в PATH, а затем в текущем узле реестра пользователя

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\App Paths\Python.exe

а затем в кустах локального реестра

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\App Paths\Python.exe

Ответ 5

Теперь, когда выпущен Python 3.3, проще всего использовать утилиту py.exe, описанную здесь: http://www.python.org/dev/peps/pep-0397/

Он позволяет указать версию Python в вашем файле script, используя директиву стиля UNIX. Существуют также параметры командной строки и среды для управления версией Python.

Самый простой способ получить эту утилиту - установить Python 3.3 или новее.

Ответ 6

Если вы хотите переключаться между Python 2.x и Python 3.x, то проще всего использовать Python Launcher, который включен с 3.3 версия. Это файл py.exe в папке Windows. Чтобы запустить командную строку Python 3.x, просто введите

py -3

Чтобы выполнить script с помощью Python 3.x, используйте

py -3 script.py

Если вы не укажете -3, то по умолчанию используется версия 2.x. Вы также можете сделать это явным с помощью переключателя -2.7.

py -2.7 script.py

Наконец, теперь вы можете вставить номер версии для использования в самом файле .script. Это работает, потому что после установки Python 3.3+ он связан с py.exe с файлами .py.

#! python3
import sys
sys.stdout.write("hello from Python %s\n" % (sys.version,))

Ответ 7

Измените раздел реестра

HKEY_CLASSES_ROOT\Applications\python.exe\shell\open\command