[pyar] Ayuda con argparse

Luis Andraschnik luis.andraschnik en gmail.com
Mie Dic 13 16:07:03 ART 2017


Podés usar subcommands/subparsers , si son mutuamente excluyentes. Por
default es obligatorio el argumento. Ejemplo de la Web de Python:
Acá a y b son subcommands obligatorios y excluyentes .Para tu ejemplo
a=foo, b=bar y h es sarasa,  un argumento opcional ( el foo del ejemplo le
tenés que dar un nombre diferente y que sea requerido)

>>> parser.parse_args(['--help'])
usage: PROG [-h] [--foo] {a,b} ...

positional arguments:
  {a,b}   sub-command help
    a     a help
    b     b help

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

>>> parser.parse_args(['a', '--help'])
usage: PROG a [-h] bar

positional arguments:
  bar     bar help

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

>>> parser.parse_args(['b', '--help'])
usage: PROG b [-h] [--baz {X,Y,Z}]

optional arguments:
  -h, --help     show this help message and exit
  --baz {X,Y,Z}  baz help

El 13 de diciembre de 2017, 15:31, poxyran <poxyrantab en gmail.com> escribió:

> Hola a todos!,
>
> estoy teniendo un problema y no logro dar con la solucion exacta. Mi
> problema es el siguiente:
>
> necesito tener dos parametros mutuamente excluyentes pero cualquiera de
> los dos tienen que ser requeridos. Por ej, supongamos que tengo -foo y
> -bar. Los dos no pueden ser especificados al mismo tiempo pero si o si
> uno de los dos.
>
> Ademas, necesito tener un parametro opcional -sarasa que puede ser
> especificado o no conjuntamente con cualquiera de los parametros
> requeridos, -foo o -bar.
>
> Estuve dando vueltas alrededor de add_mutually_exclusive_group pero me
> pasan dos cosas: 1. Los parametros son listados como 'opcionales' en
> lugar de 'requeridos' 2. no tengo idea como agregar el parametro
> opcional en ese caso.
>
> Btw, estoy laburando con Python3.5/3.6
>
> Alguien seria tan amable de explicarme como catzo resolver esto?
>
> Gracias.
>
>
> _______________________________________________
> Lista de Correo de PyAr - Python Argentina - pyar en python.org.ar
> Sitio web: http://www.python.org.ar/
>
> Para administrar la lista (o desuscribirse) entrar a
> http://listas.python.org.ar/listinfo/pyar
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20171213/ab8f828e/attachment-0001.html>


Más información sobre la lista de distribución pyar