TypeError: __init__() got an unexpected keyword argument 'Typ' in argparse

Hey also ich bin mit argparse, um zu versuchen und generieren einen vierteljährlichen Bericht. Dies ist, was der code sieht wie folgt aus:

parser  = argparse.ArgumentParser()

parser.add_argument('-q', "--quarter",  action='store_true', type=int, help="Enter a Quarter number: 1,2,3, or 4 ")
parser.add_argument('-y', "--year", action='store_true',type=str,help="Enter a year in the format YYYY ")
args = parser.parse_args()

die Fehler ich erhalte, ist:

TypeError: init() got an unexpected keyword argument 'Typ'

soweit ich sagen kann von der argparse-Dokumentation-Typ ist einer der Parameter der add_argument Funktion. Ich habe versucht, das entfernen Sie diese und aktualisieren Sie den code :

parser  = argparse.ArgumentParser()

parser.add_argument('-q', "--quarter",  action='store_true', help="Enter a Quarter number: 1,2,3, or 4 ")
parser.add_argument('-y', "--year", action='store_true',help="Enter a year in the format YYYY ")
args = parser.parse_args()

Dann versuchte ich es mit: python scriptname.py -q 1 -y 2015 und es gibt mir die folgende Fehlermeldung:

Fehler:unrecognized Argumente: 1 2015

Ich weiß nicht warum, entweder. Kann bitte jemand etwas Licht in diese Schuppen.

Bitte formatieren Sie, dass code, es ist schwer zu Lesen - 4 Zeichen vor jeder Zeile wird es sein, einen code-block.
Warum sind Sie mit action='store_true'? Was war Ihr Verständnis von dem, was Sie tun?
später im code mache ich einen check, um zu sehen, wenn die Variablen gespeichert, die in argparse wahr sind. wenn Sie sind, führe ich einige code.
Das ist überhaupt nicht so, wie store_true funktioniert, oder sogar, wie Wahrheit funktioniert in Python.
Der Zweck der store_true ist, um den Wert zu speichern True für die benannte variable. Die Angabe einer type Wert für die gleiche option ist sinnlos und nicht zulässig.

InformationsquelleAutor Big_VAA | 2015-11-06

Schreibe einen Kommentar