Permitindo valores específicos para um argumento Argparse [duplicado]
Esta questão já tem uma resposta aqui:
Restringindo valores de opções de linha de comando 1 respostaÉ possível exigir que umargparse
argumento ser um dos poucos valores predefinidos?
Minha abordagem atual seria examinar o argumento manualmente e se não for uma das chamadas de valores permitidosprint_help()
e sair.
Aqui está a implementação atual:
...
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)
Não é que isso seja particularmente difícil, mas sim que parece ser confuso.