There is probably enough information in the file Actionsgenerated by the regular parserdefinition to complete this task.
To take part in your example:
In [122]: parser=argparse.ArgumentParser()
In [123]: arglist = []
In [124]: arg1 = parser.add_argument('-f','--foo')
In [126]: arglist.append(arg1)
In [128]: arg2=parser.add_argument('bar')
In [129]: arglist.append(arg2)
In [131]: arg3=parser.add_argument('phi')
In [132]: arglist.append(arg3)
In [133]: arglist
Out[133]:
[_StoreAction(option_strings=['-f', '--foo'], dest='foo', nargs=None, const=None, default=None, type=None, choices=None, help=None, metavar=None),
_StoreAction(option_strings=[], dest='bar', nargs=None, const=None, default=None, type=None, choices=None, help=None, metavar=None),
_StoreAction(option_strings=[], dest='phi', nargs=None, const=None, default=None, type=None, choices=None, help=None, metavar=None)]
add_argument Action (, Action), , , .
, arg1 . , repr. .
dict(phi='hello', bar=1, foo=2) , dest='foo' (-f --foo), (nargs=None - 1 ). dest='bar' option_strings. , bar phi.
parser._actions
- -h.