Флаги переключения Python argparse

Есть ли способ в argparse анализировать такие флаги, как [+-]a,b,c,d?

foo.py +s -b

следует хранить True в destиз sи False в destиз b, как это делается в Windows attribили Linux chmod.

В настоящее время я использую 2 отдельных аргумента +sи -sс store_trueи store_falseсоответственно. Но он создает уродливую справку, в которой каждый флаг перечисляется дважды (+a & -a)

Другим обходным путем может быть ручной анализ расширенного аргумента с регулярным выражением (, что почему-то кажется намного проще, и использование пользовательского описания, , но перед этим я просто хотел осмотреться, есть ли что-нибудь, что я мог бы использовать выполнить то же самое, используя сам argparse.

9
задан Martijn Pieters 16 July 2012 в 04:45
поделиться