Preguntas etiquetadas con argparse

Un módulo de Python para implementar interfaces de línea de comandos

652
Argparse argumentos posicionales opcionales?

Tengo un script que debe usarse de esta manera: usage: installer.py dir [-h] [-v] dir es un argumento posicional que se define así: parser.add_argument('dir', default=os.getcwd()) Quiero dirque sea opcional: cuando no se especifica, debería serlo cwd. Lamentablemente, cuando no especifico el...

529
Ejemplo de argumento simple deseado: 1 argumento, 3 resultados

La documentación para el módulo argparse python , aunque excelente, estoy seguro, es demasiado para mi pequeño cerebro principiante en este momento. No necesito hacer cálculos matemáticos en la línea de comando o entrometerme con las líneas de formato en la pantalla o cambiar los caracteres de...

183
Requerir cualquiera de los dos argumentos usando argparse

Dado: import argparse pa = argparse.ArgumentParser() pa.add_argument('--foo') pa.add_argument('--bar') print pa.parse_args('--foo 1'.split()) Cómo puedo realizar al menos uno de "foo, bar" obligatorios: --foo x, --bar yy --foo x --bar yestán bien hacer a lo sumo uno de "foo, bar" obligatorio:...

154
Tener opciones en argparse con un guión

Quiero tener algunas opciones en el módulo argparse, como --pm-exportcuando intento usarlo como args.pm-exportsi recibiera el error de que no hay atributo pm. ¿Cómo puedo solucionar este problema? ¿Es posible tener -opciones de línea de

129
Obtenga el subcomando seleccionado con argparse

Cuando uso subcomandos con python argparse, puedo obtener los argumentos seleccionados. parser = argparse.ArgumentParser() parser.add_argument('-g', '--global') subparsers = parser.add_subparsers() foo_parser = subparsers.add_parser('foo') foo_parser.add_argument('-c', '--count') bar_parser =...

118
Argparse: argumento obligatorio 'y' si 'x' está presente

Tengo un requisito de la siguiente manera: ./xyifier --prox --lport lport --rport rport para el argumento prox, uso action = 'store_true' para verificar si está presente o no. No necesito ninguno de los argumentos. Pero, si --prox se establece que requiero rport y lport también. ¿Existe una...