``True``. Note that this only applies for arguments when the choices specified
are strings::
- >>> parser = argparse.ArgumentParser(description='Process some integers.',
- suggest_on_error=True)
- >>> parser.add_argument('--action', choices=['sum', 'max'])
- >>> parser.add_argument('integers', metavar='N', type=int, nargs='+',
- ... help='an integer for the accumulator')
- >>> parser.parse_args(['--action', 'sumn', 1, 2, 3])
- tester.py: error: argument --action: invalid choice: 'sumn', maybe you meant 'sum'? (choose from 'sum', 'max')
+ >>> parser = argparse.ArgumentParser(suggest_on_error=True)
+ >>> parser.add_argument('--action', choices=['debug', 'dryrun'])
+ >>> parser.parse_args(['--action', 'debugg'])
+ usage: tester.py [-h] [--action {debug,dryrun}]
+ tester.py: error: argument --action: invalid choice: 'debugg', maybe you meant 'debug'? (choose from debug, dryrun)
If you're writing code that needs to be compatible with older Python versions
and want to opportunistically use ``suggest_on_error`` when it's available, you