==== --feature and --no-feature ====
To do
command --feature
and
command --no-feature
For python >= 3.9:
parser.add_argument('--feature', action=argparse.BooleanOptionalAction)
For python < 3.9:
parser.add_argument('--feature', action='store_true')
parser.add_argument('--no-feature', dest='feature', action='store_false')
parser.set_defaults(feature=True)
In practice:
parser.add_argument(
"--header", action='store_true',
dest='header',
help='use 1st line as header')
parser.add_argument(
"--no-header", action='store_false',
dest='header',
help='assumes that there is no header')
parser.set_defaults(header=True)
Ref:-
* https://stackoverflow.com/questions/15008758/parsing-boolean-values-with-argparse
* https://docs.python.org/3/library/argparse.html#action -> search for ''--no-foo''