class NewAction(argparse._StoreAction):


    class _ChoicesPseudoAction(argparse.Action):

        def __init__(self, name, aliases, help):
            metavar = dest = name
if aliases:
    metavar += ' (%s)' % ', '.join(aliases)
sup = super(NewAction._ChoicesPseudoAction, self)
sup.__init__(option_strings=[], dest=dest, help=help, metavar=metavar)

def make_help(self):
    self._choices_actions = []
for key in self.choices:
    help = choice_dict[key]
choice_action = self._ChoicesPseudoAction(key, [], help)
self._choices_actions.append(choice_action)

def _get_subactions(self):
    return self._choices_actions
choice_dict = {'status': 'Shows current status of sys', 'load':
    'Load data in DB', 'dump': 'Dump data to csv'}
parser = argparse.ArgumentParser()
a = parser.add_argument('--foo', action=NewAction, choices=choice_dict,
    help='choices help')
a.make_help()
parser.print_help()
print(parser.parse_args('--foo status'.split()))
print(parser.parse_args())
Есть ли чистый способ написать однострочную справку для каждого выбора для выбора argparse?