python3 – argparser 个性化参数设定
在一个成熟的脚本中,我们需要增加一些说明来让别人更加清楚的知道如何使用此代码,类似于 --help 去让别人知道可以接的参数,以及每个参数的含义,并且可以引入外部参数,使脚本更灵活
如下范例中,我创建了一段名为my_program.py的代码,代码中我设定了一个叫做 cycle的参数,类型是整型,默认值为100,help信息则为提示信息,说明这个参数的作用,我们可以在程序运行的时候使用–cycle 10 将cycle的值重新设定为10,或者使用-C 10,两者的作用是一致的
import argparse
# 创建参数解析器对象
parser = argparse.ArgumentParser()
# 添加参数
parser.add_argument('--cycle', '-C', type=int, default=100,
help='the number of cycles')
# 解析参数
args = parser.parse_args()
# 输出结果
print('The number of cycles is', args.cycle)
在这个示例中,我们通过 add_argument
方法添加了两个参数:--cycle
和 -C
。其中,--cycle
指定了参数的长格式,-C
指定了参数的短格式,且两者效果是等价的。type=int
表示该参数的值必须是整数类型,默认值为 100,帮助信息中指定了它的含义。最后,我们通过 parse_args
方法解析命令行参数,并将结果保存到 args
对象中。
需要注意的是,我们在调用这些参数的时候,需要使用 args.参数
可以这样调用程序:
$ python3 my_program.py --cycle 200
The number of cycles is 200
$ pythone3 my_program.py -C 300
The number of cycles is 300
可以看到,这两个命令的输出结果都是正确的,而且 --cycle
和 -C
选项的作用是等价的。
另外,argparse函数内置了–help参数,所以我们可以使用 -h 或 --help来调用内部设定的帮助信息
比如:
$ python3 my_program.py -h
usage: 12.py [-h] [--cycle CYCLE]
optional arguments:
-h, --help show this help message and exit
--cycle CYCLE, -C CYCLE
the number of cycles
可以看到,我们使用 -h或–help参数时可以将我们脚本内可以接的参数以及帮助信息打印出来,非常的方便