„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Wie kann ich mit dem argparse-Modul von Python eine Werteliste als Befehlszeilenargument übergeben?

Wie kann ich mit dem argparse-Modul von Python eine Werteliste als Befehlszeilenargument übergeben?

Veröffentlicht am 06.11.2024
Durchsuche:762

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

Wie kann ich eine Liste als Befehlszeilenargument mit argparse übergeben?

Im argparse-Modul von Python können Sie eine Liste übergeben als Befehlszeilenargument mit den Optionen nargs oder append.

nargs

Verwenden Sie nargs, um die Anzahl der zu erwartenden Argumente anzugeben. Beispielsweise gibt nargs=' ein oder mehrere Argumente an und nargs='*' gibt null oder mehr Argumente an. So verwenden Sie es:

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

append

Verwenden Sie append, um eine Liste zu erstellen, indem Sie jedes Argument als Element hinzufügen. So verwenden Sie es:

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

WICHTIG:

  • Verwenden Sie type=list nicht mit argparse. Es wird eine Liste von Listen erstellt, was nicht dem gewünschten Verhalten entspricht.
  • Wenn Sie eine Liste als Argument übergeben, vermeiden Sie die Verwendung von Anführungszeichen.
Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3