Seite 1 von 1
möchte gerne operator auswählen bei rechen-programm
Verfasst: Sonntag 12. September 2010, 09:59
von anfängerpython
Code: Alles auswählen
while True:
zahl1 = int(input("geben sie eine zahl ein"))
if zahl1 == "ende":
break
zahl2 = int(input("geben sie eine zahl ein"))
if zahl2 == "ende":
break
operator = int(input("geben sie + , - , * oder / ein"))
ergebnis = zahl1 operator zahl2
print(ergebnis)
operator bei "ergebnis = zahl1 operator zahl2" ist rot angestrichen und somit ein syntax fehler.
ich weiß nicht wie man den operator sonst auswählen kann oder was an meiner eingabe falsch ist.
Bittte um hilfe
Re: möchte gerne operator auswählen bei rechen-programm
Verfasst: Sonntag 12. September 2010, 10:12
von Leonidas
Ein Beispiel zum selbst spielen:
Code: Alles auswählen
import operator
operators = {
'+' : operator.add,
'-' : operator.sub,
'*' : operator.mul
}
operation = operators[input("geben sie + , - oder * ein")]
ergebnis = operation(zahl1, zahl2)
Re: möchte gerne operator auswählen bei rechen-programm
Verfasst: Sonntag 12. September 2010, 10:17
von cofi
Nein, `operator` ist nicht rot, weil es ein Syntaxfehler ist, sondern weil es ein Modul ist. In dem Fall auch das, das du suchst.
Was denkst du denn, macht
Code: Alles auswählen
operator = int(input("geben sie + , - , * oder / ein"))
?
Code: Alles auswählen
import operator
operation = input("+,-,* or /")
function = { '+' : operator.add,
'-' : operator.sub,
'*' : operator.mul,
'/' : operator.div }[operation]
result = function(first, second)
Re: möchte gerne operator auswählen bei rechen-programm
Verfasst: Sonntag 12. September 2010, 10:26
von anfängerpython
danke wie kann ich dividieren ergänzen
Re: möchte gerne operator auswählen bei rechen-programm
Verfasst: Sonntag 12. September 2010, 13:11
von snafu
anfängerpython hat geschrieben:danke wie kann ich dividieren ergänzen
Mit ein wenig Eigeninitiative (Doku des
operator-Moduls lesen) oder cofis Beitrag beachten.