Вы можете установить для параметра prefix_chars
значение, отличное от '-'
:
parser = argparse.ArgumentParser(prefix_chars='-+')
, с этого момента вы можете начать использовать -
или +
вопределение аргументов:
>>> import argparse
>>> parser = argparse.ArgumentParser(prefix_chars='-+')
>>> parser.add_argument('+opt', action='store_true')
_StoreTrueAction(option_strings=['+opt'], dest='opt', nargs=0, const=True, default=False, type=None, choices=None, help=None, metavar=None)
>>> parser.add_argument('-f')
_StoreAction(option_strings=['-f'], dest='f', nargs=None, const=None, default=None, type=None, choices=None, help=None, metavar=None)
>>> parser.parse_args(['+opt', '-f', '<filename>'])
Namespace(f='<filename>', opt=True)
Выше определено +opt
;Вы должны использовать правильный префикс, чтобы вызвать его, -opt
не будет работать.