sys.argv[]说白了就是一个从程序外部获取参数的桥梁,这个“外部”很关键,所以那些试图从代码来说明它作用的解释一直没看明白。因为我们从外部取得的参数可以是多个,所以获得的是一个列表(list),也就是说sys.argv其实可以看作是一个列表,所以才能用[]提取其中的元素。其第一个元素是程序本身,随后才依次是外部给予的参数。
druid.py如下
import sys
a = sys.argv[0]
print(a)
保存运行如下
得到的结果是test.py,这就是0指代码(即此.py程序)本身的意思。
然后我们将代码中0改为1 :
import sys
a = sys.argv[1]
print(a)
运行,输出了我们传进去的参数,所以sys.argv[]就是获取我们从控制台传入的参数的
接着,我们再将代码改一下,获取输入的全部参数
import sys
a = sys.argv[1:]
print(a)
得到的结果是['11', '22', '33', '44', '55']
Sys.argv其实就是一个列表,里边的项为用户输入的参数,关键就是要明白这参数是从程序外部输入的,而非代码本身的什么地方,要想看到它的效果就应该将程序保存了,从外部来运行程序并给出参数。
附:Python 用 sys.argv 读取指令行的参数
#!/usr/bin/python
import sys
print "Script Name:", sys.argv[0]
以上程式码会印出执行程式的名称, 配合 len() 函式, 可以知道指令输入了多少个参数。以下是配合使用 len() 函式, 把输入的参数印出:
#!/usr/bin/python
import sys
n = len(sys.argv)
for i in range(1, n):
print sys.argv[i]
总结
到此这篇关于Python中sys.argv[]用法的文章就介绍到这了,更多相关Python sys.argv[]用法内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!