74 votes

Argument booléen pour le script

En Python, je comprends comment int et str arguments peuvent être ajoutés à des scripts.

parser=argparse.ArgumentParser(description="""Mydescription""")
parser.add_argument('-l', type=str, default='info', help='String argument')
parser.add_argument('-dt', type=int, default ='', help='int argument')

Quel est-il pour les booléens?

Fondamentalement, je veux passer un drapeau dans mon script qui vous permettra de connaître le script que de faire une action spécifique ou non.

146voto

sberry Points 28742

Vous pouvez soit utiliser l' action avec store_true|store_false, ou vous pouvez utiliser un int et laissez la conversion implicite de vérifier une valeur booléenne.

À l'aide de l' action, vous ne pouvez pas passer une --foo=true et --foo=false argument, il vous suffit de l'inclure si c'était pour avoir la valeur true.

python myProgram.py --foo

En fait, je pense que ce que vous voulez, c'est

parser.add_argument('-b', action='store_true', default=False)

17voto

Ned Batchelder Points 128913
parser.add_argument('--foo', action='store_true')

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X