У меня две версии python: Python 2.5 и Python 2.7. Когда я настраиваю django, я хочу использовать Python 2.7, но django каким-то образом использует Python 2.5.
Как я могу убедиться, что django использует Python 2.7? Я использую Windows XP
У меня две версии python: Python 2.5 и Python 2.7. Когда я настраиваю django, я хочу использовать Python 2.7, но django каким-то образом использует Python 2.5.
Как я могу убедиться, что django использует Python 2.7? Я использую Windows XP
Измените переменную системной среды PATH, чтобы указать на версию Python, которую вы хотите использовать.
Изменение 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
С тех пор, пока у вас есть права администратора, вы можете переключиться, как вам нужно, указав на ссылку на нужную вам версию.
Сделайте два простых файла .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.:)
Установщик 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
Теперь, когда выпущен Python 3.3, проще всего использовать утилиту py.exe, описанную здесь: http://www.python.org/dev/peps/pep-0397/
Он позволяет указать версию Python в вашем файле script, используя директиву стиля UNIX. Существуют также параметры командной строки и среды для управления версией Python.
Самый простой способ получить эту утилиту - установить Python 3.3 или новее.
Если вы хотите переключаться между 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,))
Измените раздел реестра
HKEY_CLASSES_ROOT\Applications\python.exe\shell\open\command