argparse---命令行选项、参数和子命令解析器

argparse 模块可以让人轻松编写用户友好的命令行接口。程序定义它需要的参数,然后 argparse 将弄清如何从 sys.argv 解析出那些参数。 argparse 模块还会自动生成帮助和使用手册,并在用户给程序传入无效参数时报出错误信息

1. 使用argparse的主要步骤

  1. 导入argparse包;
  2. 创建ArgumentParser()对象;
  3. 调用add_argument()方法往参数对象中添加参数;
  4. 使用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. 参考

  1. https://docs.python.org/zh-cn/3/library/argparse.html
  2. https://blog.csdn.net/qq_41731861/article/details/120827681

猜你喜欢

转载自blog.csdn.net/lucky_mmg/article/details/118709341
今日推荐