"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment puis-je transmettre une liste de valeurs comme argument de ligne de commande à l'aide du module argparse de Python ?

Comment puis-je transmettre une liste de valeurs comme argument de ligne de commande à l'aide du module argparse de Python ?

Publié le 2024-11-06
Parcourir:784

How can I pass a list of values as a command-line argument using Python\'s argparse module?

Comment puis-je transmettre une liste comme argument de ligne de commande avec argparse ?

Dans le module argparse de Python, vous pouvez transmettre une liste comme argument de ligne de commande en utilisant les options nargs ou append.

nargs

Utilisez nargs pour spécifier le nombre d'arguments à attendre. Par exemple, nargs=' indique un ou plusieurs arguments et nargs='*' indique zéro ou plusieurs arguments. Voici comment l'utiliser :

parser.add_argument('-l', '--list', nargs=' ', help=' Set flag', required=True)
# Use like:
# python test.py -l 1234 2345 3456 4567

append

Utilisez append pour créer une liste en ajoutant chaque argument en tant qu'élément. Voici comment l'utiliser :

parser.add_argument('-l', '--list', action='append', help=' Set flag', required=True)
# Use like:
# python test.py -l 1234 -l 2345 -l 3456 -l 4567

IMPORTANT :

  • Ne pas utiliser type=list avec argparse. Il crée une liste de listes qui ne correspond pas au comportement souhaité.
  • Lorsque vous transmettez une liste comme argument, évitez d'utiliser des guillemets.
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3