这是一个解析器,该解析器处理重复的2个可选参数-名称在中定义
metavar:
parser=argparse.ArgumentParser()parser.add_argument('-i','--input',action='append',nargs=2, metavar=('url','name'),help='help:')In [295]: parser.print_help()usage: ipython2.7 [-h] [-i url name]optional arguments: -h, --help show this help message and exit -i url name, --input url name help:In [296]: parser.parse_args('-i one two -i three four'.split())Out[296]: Namespace(input=[['one', 'two'], ['three', 'four']])这不能解决问题
2 or 3 argument(尽管我前一段时间写了一个补丁来处理这样的范围的Python错误/问题)。
用
nargs=3和分别定义参数如何
metavar=('url','name','other')?元组
metavar也可以与
nargs='+'和
nargs='*';一起使用。这两个字符串用作
[-u A [B ...]]或
[-u [A[B ...]]]。



