Python没有打印所有的sys.argv

bio*_*osr 2 python windows sys command-line-arguments python-2.7

我从sys.argv [1]得到一个超出范围错误的列表,我尝试用这段代码制作一个简单的脚本.

import sys
print sys.argv
Run Code Online (Sandbox Code Playgroud)

我在cmd上得到这个:

C:\...\...\...\py>back.py exampleargv
['C:\\...\\...\\...\\py\\back.py']
Run Code Online (Sandbox Code Playgroud)

我不知道为什么我没有得到下一个arg.

sp0*_*n3r 5

这是一个特定于Windows的问题:尝试"python back.py examplearg"它会起作用.

解决方案(除了没有运行Windows!)是更新您的注册表.

http://eli.thegreenplace.net/2010/12/14/problem-passing-arguments-to-python-scripts-on-windows/

设置这些键=值

HKEY_CLASSES_ROOT\Applications\python26.exe\shell\open\command ="C:\ Python26\python26.exe""%1"%*

HKEY_CLASSES_ROOT\py_auto_file\shell\open\command ="C:\ Python26\python26.exe""%1"%*