argparse 模块可以让人轻松编写用户友好的命令行接口。程序定义它需要的参数,然后 argparse 将弄清如何从 sys.argv 解析出那些参数。 argparse 模块还会自动生成帮助和使用手册,并在用户给程序传入无效参数时报出错误信息
1. 使用argparse的主要步骤
- 导入argparse包;
- 创建ArgumentParser()对象;
- 调用add_argument()方法往参数对象中添加参数;
- 使用parse_args()解析添加参数的参数对象,获得解析对象;程序的其他部分需要使用命令行参数时,用解析对象.参数获取。
# (1) 导入argparse包
import argparse
# (2) 声明一个parser
parser = argparse.ArgumentParser()
# (3) 添加参数
# parser.add_argument("--parg")
parser.add_argument("-s", '--subject')
parser.add_argument("--number", type=int, help="输入数字")
parser.add_argument("--name", help="名字", default="cmm")
# (4)读取命令行参数
args = parser.parse_args()
# (4) 调用这些参数
# print(args.parg)
print(args.subject)
print("number={}".format(args.number))
print("name = {}".format(args.name))
2. argparse 模块常用参数
2.1 可选参数
parser.add_argument("--name", help="名字", default="cmm")
通过在参数名前加 - - ,设置为可选参数。如果未输入,则使用 default 默认值(若未设置 default ,则会默认赋值 None )。
2.2 可选参数引用名
parser.add_argument("-s", '--subject')
通过将可选参数设置引用名,可以缩短参数名 -r,简化命令行参数输入。
2.3 必选参数设置
当通过设置 required=True 后,无论参数是否是可选参数,都必须输入。
3. 参考
- https://docs.python.org/zh-cn/3/library/argparse.html
- https://blog.csdn.net/qq_41731861/article/details/120827681