文章转自:https://www.cnblogs.com/aland-1415/p/6613449.html
简单标记了一下细节和重点。
sys.argv[]就是一个从程序外部获取参数的桥梁,这个“外部”很关键。我们从外部取得的参数可以是多个,所以获得的是一个列表(list),也就是说sys.argv其实可以看作是一个列表,所以才能用 [] 提取其中的元素。其第一个元素是程序本身,随后才依次是外部给予的参数。
下面我们通过一个极简单的test.py程序的运行结果来说明它的用法。
1 #test.py
2
3 import sys
4 a=sys.argv[0]
5 print(a)
ctrl+R输入cmd进入控制台命令窗口,然后输入test.py运行我们刚刚写的程序:
得到的结果是D:\Desktop\test.py,这就是0指代码(即此.py程序)本身的意思。
然后我们将代码中0改为1 :
a=sys.argv[1]
保存后,再从控制台窗口运行,这次我们加上一个参数,输入:test.py force
得到的结果就是我们输入的参数force,看到这里你是不是开始明白了呢。
那我们再把代码修改一下:
a= sys.argv[2:]
保存后,再从控制台窗台运行程序,这次多加几个参数,以空格隔开:
test.py a b c d e f
得到的结果为[‘b’, ’c’, ’d’, ’e’, ’f’] (因为第0位是程序本身,第一位才是用户输入的第一个参数,此处需要注意一下)
Sys.argv[ ]其实就是一个列表,里边的项为用户输入的参数,关键就是要明白这参数是从程序外部输入的,而非代码本身的什么地方,要想看到它的效果就应该将程序保存了,从外部来运行程序并给出参数。