2015-06-03 4 views
3

Я, кажется, возникают проблемы с выполнением сценария Python из Win + R терминала.Выполнение скрипта Python из командной строки в Windows 7

Я закончил следующие шаги:

  1. Использовал притон линию перед вводом моего сценария для всех файлов .py. Пример того, что я сделал для сценария под названием Primefactorization.py.

    #! python3 
    
  2. Я создал пакетный файл в той же папке с тем же именем и введите следующий код:

    @python.exe C:\Python Scripts\Primefactorization.py %* 
    
  3. я добавил путь (C:\Python Scripts) в переменную PATH в переменных окружения окно.

  4. Когда я пытаюсь вызвать скрипт с помощью команды «Выполнить» в Windows 7, оболочка открывается и сразу исчезает.

  5. Основываясь на прошлом ответе на аналогичную проблему с переполнением стека, я также добавил следующий код, запрашивающий пользователя для ввода перед выходом. Но это не работает.

    x = input('press enter to close') 
    

Не могли бы вы, пожалуйста, дайте мне знать, где эта проблема может быть?

+2

Если вы откроете командную строку, а затем введите 'python', вы получите приглашение на python? Если да, если вы вводите 'python yourscript.py' в командной строке, выполняется ли ваш скрипт? – WoJ

+0

Работает ли ваш скрипт без ошибок? Ошибки из скрипта Python немедленно закрывают окна командной строки, если они явно не пойманы. – SuperBiasedMan

+1

Если я пишу python в командной строке. Он открывает консоль python. Однако, «python pythonscript.py» не работает. Я получаю следующую ошибку: «Не могу открыть файл myscript.py: [Errno2] нет такого файла или каталога». Хотя скрипт находится в том же каталоге, что и файл exe python. – Kannaj

ответ

1

В вашем пути есть пробел. Включите его в двойные кавычки. Например:

python.exe "C:\Python Scripts\Primefactorization.py" 
+0

Это в пакетном файле? должен ли я пропускать% * – Kannaj

+0

Да, в пакетном файле. Вы можете пропустить '% *', так как я предполагаю, что ваша программа не требует никаких аргументов. Очевидно, также убедитесь, что существует 'C: \ Python Scripts \ Primefactorization.py'. – Zenadix

+0

Спасибо .. это, наконец, похоже на обходное решение :). Любая идея, почему это работает? – Kannaj