Python不会读取sys.argv

Python不会读取sys.argv,python,command-line-arguments,sys,Python,Command Line Arguments,Sys,嗨 这看起来很基本,但我无法让Python从命令行读取任何内容。 这是上面的代码,我键入的是: import sys print sys.argv[1] 我得到的回报是: myfile.py helloworld 它似乎对我有用过一次,但不再有用了,我尝试过卸载和重新安装Python,但仍然不起作用 所以我的问题是,我做错什么了吗?还是我刚刚弄坏了蟒蛇 谢谢你的帮助 使用: 视窗7 Python2.7.2您确定您正在以自己认为的方式调用Python脚本吗 I

这看起来很基本,但我无法让Python从命令行读取任何内容。 这是上面的代码,我键入的是:

    import sys

    print sys.argv[1]
我得到的回报是:

    myfile.py helloworld
它似乎对我有用过一次,但不再有用了,我尝试过卸载和重新安装Python,但仍然不起作用

所以我的问题是,我做错什么了吗?还是我刚刚弄坏了蟒蛇

谢谢你的帮助

使用: 视窗7
Python2.7.2

您确定您正在以自己认为的方式调用Python脚本吗

    IndexError: list index out of range
启动注册表编辑器(regedit)。将HKEY\U CLASSES\U ROOT\Applications\python26.exe\shell\open\command键设置为:
“C:\Python26\Python26.exe”“%1”%*


此解决方案的来源:

当您只打印sys.argv时会发生什么?当通过
python.exe myfile.py helloworld
调用文件时,它能工作吗?啊,谢谢你的回复,我设法让它工作了。有一个非常愚蠢的错误,没有将python添加到系统变量中的路径中。对于那些在Windows中向脚本传递参数时遇到困难的人,如果没有调用python(例如,
python foo.py a
works,但是
foo.py a
不,)滚动到第一个答案之前。哇,这个注册表遗漏今天让我们有些困惑,我们试图同时平衡Python2.7Anaconda和3.4安装。3.4安装程序省略了
%*
参数,但我们需要为
HKEY\U CLASSES\U ROOT\Applications\pythonxx.exe\shell\open\command
键以及
HKEY\U CLASSES\U ROOT\py\u auto\U file\shell\open\command
键设置该参数。谢谢您的回答
#!/usr/bin/python
import sys

if len(sys.argv) < 2:
    print "you did not give any arguments\n"
else:
    print sys.argv[1]
$ ./foo.py 
you did not give any arguments

$ ./foo.py hello_world
hello_world
$