Запуск скриптов Python из командной строки Windows, аргумент не передан

У меня есть куча сценариев, написанных на Python. Я запускаю их из командной строки Windows, как

c:> my_script.py arg1 arg2 arg3

Это работает на каждом компьютере и в каждой версии Windows уже много лет. Только сейчас это сломалось в моей системе Windows 7. Сценарий загружается и выполняется. Но ни один из аргументов не передается в скрипт.

Чтобы проиллюстрировать это, у меня есть скрипт py_echo.py:

from pprint import pprint as pp
import sys

if __name__ =='__main__':
    pp(sys.argv)

Затем я выполняю его с аргументами a, b, c. Ни один из них не передается.

c:\Python27\Lib\site-packages>py_echo.py a b c
['C:\\0\\usr\\bin\\py_echo.py']

Если я запускаю python.exe в явном виде, аргументы передаются правильно

c:\Python27\Lib\site-packages>python.exe c:\0\usr\bin\py_echo.py a b c
['c:\\0\\usr\\bin\\py_echo.py', 'a', 'b', 'c']

До этого все работало. Он начал ломаться только после того, как я удалил с компьютера кучу старых версий интерпретатора Python и модулей. Переустановка Python не помогла. Интересно, что я могу сделать, чтобы исправить это???

Я стал очень зависим от моих скриптов, которые я создавал годами. Я чувствую себя очень ущербным, когда они ломаются :(

15
задан Wai Yip Tung 22 October 2011 в 16:22
поделиться