Разбор неизвестного числа позиционных аргументов возможен путем установки nargs
в *
.
Можно ли как-то проанализировать неизвестное количество именованных аргументов с помощью argparse?
Дляпример:
>>> import argparse
>>> parser = argparse.ArgumentParser()
>>> parser.add_argument("optionals", nargs="**")
>>> parser.parse_args(['--foo', 'FOO', '--bar', 'BAR'])
Namespace(optionals={'foo': 'FOO', 'bar': 'BAR'})
Я могу попытаться проанализировать результирующий список, который получается из nargs='*'
, но который окажется неэффективным с большим количеством крайних случаев.