How to make an optional value for argument using argparse? How to make an optional value for argument using argparse? python-3.x python-3.x

How to make an optional value for argument using argparse?


After a little more reading in the documentation I found what I needed: nargs='?'.This is used with the store action, and does exactly what I want.

Here is an example:

>>> import argparse>>> parser = argparse.ArgumentParser()>>> parser.add_argument('--head',                        dest='size',                        const=10,                        default=80,                        action='store',                        nargs='?',                        type=int,                        help='Only print the head of the output')>>> parser.parse_args(''.split())... Namespace(size=80)>>> parser.parse_args('--head'.split())... Namespace(size=10)>>> parser.parse_args('--head 15'.split())... Namespace(size=15)

Source: http://docs.python.org/3/library/argparse.html#nargs