Me gustaría tener un argumento opcional que tenga un valor predeterminado si solo el indicador está presente sin ningún valor especificado, pero almacena un valor especificado por el usuario en lugar del valor predeterminado si el usuario especifica un valor. ¿Ya hay una acción disponible para esto?
Un ejemplo:
python script.py --example
# args.example would equal a default value of 1
python script.py --example 2
# args.example would equal a default value of 2
Puedo crear una acción, pero quería ver si existía una forma de hacerlo.
python
default-value
argparse
Robar
fuente
fuente
self.foo = (args.bar or some_else_source).upper()
. Se romperá en Ninguno objeto AFAIUC.En realidad, solo necesita usar el
default
argumentoadd_argument
como en estetest.py
script:Los detalles están aquí .
fuente
La diferencia entre:
y
es así:
myscript.py
=> la depuración es 7 (por defecto) en el primer caso y "Ninguno" en el segundomyscript.py --debug
=> la depuración es 1 en cada casomyscript.py --debug 2
=> la depuración es 2 en cada casofuente