19

Я использую Windows PowerShell. Допустим, у меня есть скрипт с именем test.py который печатает несколько вещей. Если я сделаю:

PS D:\>.\test.py

затем он открывает окно CMD, которое печатает несколько вещей, а затем закрывается. Это на самом деле работает интерпретатор Python под CMD. Если я сделаю

PS D:\>python test.py

он работает так, как я ожидал, с выводом в PowerShell.

Как я могу сделать так, чтобы скрипт запускался в PowerShell, когда я просто дал его имя?

2 ответа2

20

Отредактируйте переменную среды PATHEXT и добавьте расширение .py.

Просто добавьте эту строку в свой профиль powershell:

$env:PATHEXT += ";.py"

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

-1

Возможно, у вас установлено более одной версии Python, а IDLE версии более новая. Чтобы увидеть, какая у вас версия Python, вы можете набрать> python -V в командной строке. Если эта версия выглядит подходящей, то вам может понадобиться полный путь к файлу в качестве второго параметра. Например, Python C:\myfile.py.

Если вы правильно установили Python, всегда есть вероятность, что просто набрав имя скрипта, вы запустите его с python. Например, myfile.py

Я всегда нахожу, что добавление C:\Python27 к переменной% PATH% и.PY для переменной% PATHEXT% облегчает запуск сценариев. В этом случае просто> myfile должен работать.

Изменить после обновления:

Ввод просто> python без параметров открывает python в «интерактивном режиме», который отличается от режима пакетной обработки или сценариев, для которого предназначен ваш сценарий. При выполнении с аргументами первый аргумент принимается в качестве пути к файлу, а дальнейшие аргументы передаются сценарию в списке sys.argv.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .