我从 sys.argv[1] 收到一个列表超出范围的错误,我尝试使用此代码制作一个简单的脚本。
import sys
print sys.argv
我在cmd上得到这个:
C:\...\...\...\py>back.py exampleargv
['C:\\...\\...\\...\\py\\back.py']
我不知道为什么我没有得到下一个参数。
最佳答案
这是一个 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"%*
关于Python不打印所有sys.argv,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25027833/