Creando argumentos ocultos con Python argparse


Respuestas:


163

Sí, puede configurar la helpopción add_argumenten argparse.SUPPRESS. Aquí hay un ejemplo de la documentación de argparse :

>>> parser = argparse.ArgumentParser(prog='frobble')
>>> parser.add_argument('--foo', help=argparse.SUPPRESS)
>>> parser.print_help()
usage: frobble [-h]

optional arguments:
  -h, --help  show this help message and exit

Entonces simplemente aparece como test ==SUPPRESS==. Al menos cuando se usa con add_parser.
Thomas Ahle

1

Lo hago agregando una opción para habilitar los ocultos, y lo agarro mirando sysv.args.

Si hace esto, debe incluir el argumento especial que elija sys.argvdirectamente en la lista de análisis si asume que la opción es -shabilitar opciones ocultas.

parser.add_argument('-a', '-axis',
                    dest="axis", action="store_true", default=False,
                    help="Rotate the earth")
if "-s" in sys.argv or "-secret" in sys.argv:
    parser.add_argument('-s', '-secret',
                        dest="secret", action="store_true", default=False,
                        help="Enable secret options")
    parser.add_argument('-d', '-drill',
                        dest="drill", action="store_true", default=False,
                        help="drill baby, drill")

¿Es sysv.argsun error tipográfico sys.argv?
pppery

Esta es una solución razonable (una vez que se acepte mi edición para corregir los errores tipográficos).
Siwel
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.