Python函数之sys.argv

  sys.argv 一般用来获取程序外部参数。建议结合 带参数的主函数——C语言 一文来理解。
  很多编程语言中都有这个关键字,含义大致相同:

argv[0] 指向程序运行的全路径名
argv[1] 指向在DOS命令行中执行程序名后的第一个字符串
argv[2] 指向执行程序名后的第二个字符串

通过实例来看功能:

1
2
3
#!/usr/bin/python3
import sys
print(sys.argv)

命名为 alliot.py 保存到 /tmp/ 下,执行:

1
./alliot.py

结果为:

1
['./alliot.py']

如果在执行时,带上两个参数 a,b:

1
./alliot.py a b

结果为:

1
['./alliot.py', 'a', 'b']

如果我们将程序中的 sys.argv 修改为 sys.argv[0],在执行时,仍然带上两个参数 a,b:

1
./alliot.py a b

这时候,结果为:

1
./alliot.py

同理,改为 sys.argv[1],结果为:

1
a

改为 sys.argv 则为:

1
b