Maison > Article > développement back-end > Comment transmettre une liste comme argument à un programme de ligne de commande à l'aide d'argparse ?
Passer des listes en tant qu'arguments dans argparse
Lorsque vous essayez de transmettre une liste en tant qu'argument à un programme en ligne de commande utilisant argparse, il est essentiel pour comprendre les options disponibles pour représenter les listes dans l'analyseur.
Non recommandé : utiliser type=list
Évitez d'utiliser type=list avec argparse car cela peut conduire à des erreurs résultats. Il renverra une liste de listes, pas une seule liste contenant les éléments souhaités.
Utiliser nargs pour les arguments requis
Le paramètre nargs vous permet de spécifier le nombre de arguments qu’une option accepte. Pour transmettre une liste comme argument obligatoire, utilisez :
<code class="python">parser.add_argument('-l', '--list', nargs='+', help='Set flag', required=True)</code>
Utilisez action='append' pour les arguments facultatifs
Pour les arguments facultatifs, utilisez action='append ' pour permettre de fournir plusieurs instances de l'argument.
<code class="python">parser.add_argument('-l', '--list', action='append', help='Set flag')</code>
Syntaxe pour invoquer ces options
Pour les nargs, les arguments doivent être fournis ensemble sans espaces, tels que :
<code class="bash">python test.py -l 12345678</code>
Pour action='append', l'argument doit être fourni plusieurs fois, par exemple :
<code class="bash">python test.py -l 1234 -l 5678</code>
Considérations supplémentaires
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!