为什么 argparse 不解析这些参数?
--foo 1 2 3 bar
使用
parser = argparse.ArgumentParser()
parser.add_argument('--foo', nargs='+')
parser.add_argument('bar')
这给出了以下错误:
错误:参数太少
如果我先通过 bar 参数,它会起作用:
bar --foo 1 2 3
现在,这本身并不算太糟糕。我可以先使用位置参数,只是这种行为与 argparse 为我们创建的帮助不一致,后者指出 bar 应该是最后一个:
用法:argparsetest.py [-h] [--foo FOO [FOO ...]] bar
那么如何使用一致的帮助文本来完成这项工作呢?
这是一个完整的测试程序。