例如:
python foo.py --foo foo --bar bar --args -a 5 --baz 6
--foo
和 --bar
是常规参数,但 --args
很特殊,它后面应该包含参数列表:[-a, 5, --baz, 6]
。
我记得有类似的东西存在,但我不记得它是如何称呼的。
最佳答案
尝试使用argparse.REMAINDER
:
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('--foo')
parser.add_argument('--bar')
parser.add_argument('--args', nargs=argparse.REMAINDER)
print(parser.parse_args())
运行时 python foo.py --foo foo --bar bar --args -a 5 --baz 6
这返回:
Namespace(args=['-a', '5', '--baz', '6'], bar='bar', foo='foo')
关于python - argparse:如何获取特定键后的所有参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60226661/