Python не работает должным образом, когда я выполняю скрипт после использования правого клика >> Командная строка здесь - PullRequest
0 голосов
/ 31 мая 2010

Это странная ошибка. Я знаю, что с моей переменной PATH что-то происходит, но не знаю, как это исправить.

Если у меня есть скрипт C: \ Test \ test.py и я выполняю его изнутри IDLE, он работает нормально. Если я открою командную строку с помощью команды «Выполнить >> cmd.exe» и переместлюсь вручную, она будет работать нормально. Но если я использую удобный Windows 7, щелкните правой кнопкой мыши на папке >> Командная строка, а затем введите test.py. Ошибка при импорте.

Я также не могу просто набрать "python", чтобы перейти к сеансу оболочки python, если я использую последний метод выше.

Есть идеи?

Редактировать: печать пути Python для командной строки, которая работает, дает правильные пути. Печать его на нерабочем «Командная строка здесь» приводит к: переменная окружения python не определена ».

Ответы [ 3 ]

2 голосов
/ 31 мая 2010

Прежде всего, я работаю на Windows7 (в том числе) и запускаю python из командной строки для меня, используя «Командная строка здесь». Убедитесь, что у вас есть каталог, содержащий python.exe в переменной среды PATH, запустив «Командная строка здесь» и запустив set.

Теперь для ошибок импорта. При импорте Python ищет модули в каталогах, указанных в списке sys.path. Переменная окружения PYTHONPATH добавляется в этот список вместе с некоторыми каталогами по умолчанию и каталогом данного скрипта Python . Однако в IDLE этот каталог является каталогом IDLE, поэтому это может быть причиной различий, которые вы видите при запуске вещей из IDLE по сравнению с запуском их из командной строки.

Подробнее см. http://docs.python.org/tutorial/modules.html#the-module-search-path.

Вот мой совет, как решить эту проблему. Вы не упомянули, какие ошибки импорта вы получаете, но попробуйте запустить скрипт внутри IDLE и проверить атрибут .__file__ проблемных модулей, чтобы увидеть, где они находятся. Затем сравните sys.path изнутри IDLE с sys.path, который вы получаете при запуске Python из командной строки. Это должно дать вам информацию, необходимую для устранения ошибок импорта.

1 голос
/ 31 мая 2010

Я мало пользуюсь Windows, но, возможно, когда вы открываете правой кнопкой мыши -> Командная строка, путь PATH отличается от навигации вручную. Сначала попробуйте напечатать свой PATH (о, я не знаю, как это сделать) и посмотрите, отличается ли он в ситуации 2.

0 голосов
/ 31 мая 2010

Вы можете проверить текущие переменные окружения с помощью команды "set" в командной строке. Чтобы python работал, вам нужно как минимум PYTHONPATH, указывающий на ваши библиотеки python, и путь к python.exe должен быть включен в переменную PATH.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...