Argparse generó ayuda, ‘metavar’ con opciones

Cuando se usa un argumento (opcional y posicional, ambos tienen este problema ) con las choices palabras clave, el resultado de ayuda generado muestra esas opciones.

Si ese mismo argumento también incluye una palabra clave de metavar , la lista de opciones se omite de la salida generada.

Lo que tenía en mente era mostrar el metavar en la línea de usage , pero en realidad mostrar las opciones disponibles cuando el ‘autohelp’ enumera los detalles del argumento posicional / opcional.

¿Alguna solución / solución simple?


Ya he iniciado un contenedor argparse para la funcionalidad de ayuda personalizada. Tal vez esto debería ser otra característica en mi lista de tareas pendientes.

Puede agregar las opciones al texto de ayuda.

 parser=argparse.ArgumentParser() parser.add_argument('-f',metavar="TEST",choices=('a','b','c'), help='choices, {%(choices)s}') print parser.format_help() 

produce:

 usage: stack20328931.py [-h] [-f TEST] optional arguments: -h, --help show this help message and exit -f TEST choices, {a, b, c}