14.1.7 高级参数处理
到目前为止,前面的例子展示了简单的布尔标志,带字符串或数值参数的选项,以及位置参数。argparse还支持变长参数表、枚举和常量值等复杂的参数规范。
14.1.7.1 可变参数表
参数定义可以被配置为要开率到命令行上所解析的多个参数。根据必要或期望的参数个数,可以将nargs设置为表14-1所示的某个标志值。
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('--three',nargs=3)
parser.add_argument('--optional',nargs='?')
parser.add_argument('--all',nargs='*',dest='all')
parser.add_argument('--one-or-more',nargs='+')
print(parser.parse_args())
解析器会执行参数统计指令,并生成一个准确的语法图,作为命令帮助文档的一部分。