sys.argv[]说白了就是一个从程序外部获取参数的桥梁,这个“外部”很关键。因为我们从外部取得的参数可以是多个,所以获得的是一个列表(list),也就是说sys.argv其实可以看作是一个列表,所以才能用[]提取其中的元素。其第一个元素是程序本身,随后才依次是外部给予的参数。
下面我们通过几行简单的代码来试一试
#方法argv.py
import sys
a = sys.argv[0]
print(a)
进入控制台命令窗口,进入保存有这个py文件的目录下,输入:python 方法argv.py,结果如图所示:
得到的结果是方法argv.py,这就是0指代码(即此.py程序)本身的意思。
然后我们将代码中0改为1 :
#方法argv.py
import sys
a = sys.argv[1]
print(a)
保存后,再从控制台窗口运行,这次我们加上一个参数,输入:python 方法argv.py test1,结果如图所示:
得到的结果就是我们输入的参数test1,看到这里你是不是开始明白了呢。
我们再次将代码修改,把1改成2:
#方法argv.py
import sys
a = sys.argv[2:]
print(a)
保存后,从控制台窗口运行,这次我们传很多个参数,结果如图:
得到的结果为[‘TEST2‘, ‘hhh‘, ‘123‘]。
Sys.argv[ ]其实就是一个列表,里边的项为用户输入的参数,关键就是要明白这参数是从程序外部输入的,而非代码本身的什么地方,要想看到它的效果就应该将程序保存了,从外部来运行程序并给出参数。