我正在尝试在python中运行一个简单的脚本
import sys
fname = sys.argv[1]
lname = sys.argv[2]
print 'Hello', fname, lname
我收到此错误
**
traceback (most recent call last):
File "test.py", line 2, in <module>
fname = sys.argv[1]
ndexError: list index out of range
**
任何想法。
谢谢
答案 0 :(得分:2)
您没有将参数传递给脚本
这样做:
python simplescript.py Johnny Melavo
其中simplescript.py
是python脚本的名称。它应输出:
Hello Johnny Melavo
基本上sys.argv
是一个列表,它包含脚本路径以及传递给脚本的参数。如果您未传递任何参数,则长度将仅为1
,因此在尝试访问列表的[1]
或[2]
位置时会出现异常。
请务必仔细阅读异常消息。
答案 1 :(得分:1)
只是传递参数,错误即将发生,因为它有没有值的数组,当你尝试获取索引为1和2的值时,它会给出错误。