ich komme gerade nicht weiter mit dem Modul Optparse.
Ich habe mir da mal ein Beispielskript herruntergeladen um es zu testen,
doch ich bekomme immer den Fehler aus der else Anweisung, wenn
ich es starte("Es werden exakt zwei Argumente erwartet").
So sieht das Skript jetzt aus:
Code: Alles auswählen
from optparse import OptionParser
parser = OptionParser()
parser.add_option("-o", "--operation", dest="operation")
(optionen, args) = parser.parse_args()
if len(args) != 2:
parser.error("Es werden exakt zwei Argumente erwartet")
calc = {
"plus" : lambda a, b: a + b,
"minus" : lambda a, b: a - b,
"mal" : lambda a, b: a * b,
"geteilt" : lambda a, b: a / b,
None : lambda a, b: a + b
}
op = optionen.operation
if op in calc:
print "Ergebnis:", calc[op](float(args[0]), float(args[1]))
else:
parser.error("%s ist keine Operation" % op)
die Fehlermeldung bekomme, sondern mit der Eingabe der Kommandozeilenschaltern beginnen kann?
So soll es später aufgerufen werden:
calc.py -o plus 7 5
calc.py -o minus 13 29
calc.py -o mal 4 11
calc.py -o geteilt 3 2