sys.argv[]

sys.argv[]承接输入参数的方式

第一项是.py的文件路径,后面的都**以空格为分隔符进行切割,并保存在sys.argv列表**中。

  1. python get.py -o t --help cmd file1 file2
  2. ['C:\get.py', '-o', 't', '--help', 'cmd', 'file1', 'file2']

示例

  1. python temp.py a b c d

这里指的是,命令行运行 temp.py 模块,同时传入 4 个参数:a、b、c、d

sys.argv = [“temp.py”,”a”,”b”,”c”,”d”] ,也就是说 sys.argv 是持有5个元素的list对象

sys.argv[0] = “temp.py”

第 1 个元素为模块名 temp.py

sys.argv[1] = “a”

第 2 个元素为 “a”

sys.argv[1:] = [“a”,”b”,”c”,”d”]

表明传入的所有参数

getopt

用于用于抽出命令行选项和参数(也就是sys.argv)。
使用方法:

  1. getopt.getopt(args, shortopts, longopts=[])

sys.argv[]与getopt - 图1

  • opts 是一个两元组的列表,是分析出的格式信息。每个元素为(选项串, 附加参数) 。如果没有附加参数则为空串’’ 。
  • args 为不属于格式信息的剩余的命令行参数

: 代表了当前参数是有值的,是一个参数名+参数值的参数
长参数如果要接收值,则必须得在后面加上一个 =短参数则使用空格
关注对比:

  1. python test.py -f test
  2. python test.py --filename=test