Allowing specific values for an Argparse argument
Question:
Is it possible to require that an argparse
argument be one of a few preset values?
My current approach would be to examine the argument manually and if it’s not one of the allowed values call print_help()
and exit.
Here’s the current implementation:
...
parser.add_argument('--val',
help='Special testing value')
args = parser.parse_args(sys.argv[1:])
if args.val not in ['a', 'b', 'c']:
parser.print_help()
sys.exit(1)
It’s not that this is particularly difficult, but rather that it appears to be messy.
Answers:
Is it possible to require that an argparse
argument be one of a few preset values?
My current approach would be to examine the argument manually and if it’s not one of the allowed values call print_help()
and exit.
Here’s the current implementation:
...
parser.add_argument('--val',
help='Special testing value')
args = parser.parse_args(sys.argv[1:])
if args.val not in ['a', 'b', 'c']:
parser.print_help()
sys.exit(1)
It’s not that this is particularly difficult, but rather that it appears to be messy.