Hallo zusammen
Bin die Grundlagen der Sprache Python am erlernen.
Ist nicht immer so ganz einfach.
Ich habe einen einfachen Code geschrieben, bei dem der Nutzer seine zwei Werte eingeben kann.
Er kann auch noch die Mathematischen Operatoren wählen mit den er die Werte berechnen möchte.
Nun meine Frage, ich bekomme bei der Ausgabe, also wenn ich den Code ausführe immer SyntaxError: invalid syntax
An was könnte das liegen?
Im Debug Modus funktioniert der Code allerdings...
Vielen Dank
Grüsse DIBA
CODE:
def Plus (Parameter1, Parameter2):
Ergebnis = Parameter1 + Parameter2
return Ergebnis
def Minus (Parameter1, Parameter2):
Ergebnis = Parameter1 - Parameter2
return Ergebnis
def Division (Parameter1, Parameter2):
Ergebnis = Parameter1 / Parameter2
return Ergebnis
def Multiplikation (Parameter1, Parameter2):
Ergebnis = Parameter1 * Parameter2
return Ergebnis
Parameter1 = float(input("Bitte gib den ersten Wert ein: "))
Parameter2 = float(input("Bitte gib den zweiten Wert ein: "))
Eingabe = int(input("Gib ein ob du eine (1)Muliplikation, (2)Divisision, (3)Addition oder (4)Subtraktion machen möchtest "))
if Eingabe == 1:
Resultat = Multiplikation(Parameter1,Parameter2)
elif Eingabe == 2:
Resultat = Division(Parameter1,Parameter2)
elif Eingabe == 3:
Resultat = Plus(Parameter1,Parameter2)
elif Eingabe == 4:
Resultat = Minus(Parameter1,Parameter2)
else:
("Ungültige Eingabe")
print(Resultat)
SyntaxError: invalid syntax
- pillmuncher
- User
- Beiträge: 1484
- Registriert: Samstag 21. März 2009, 22:59
- Wohnort: Pfaffenwinkel
Bei mir funktioniert der Code. Übrigens wäre es nützlich, wenn du den gesamten Traceback posten würdest. Dann wissen wir, wo im Code der Fehler auftritt.
In specifications, Murphy's Law supersedes Ohm's.
@DIBA: Anmerkungen zum Code, die man gleich vom Start an mitnehmen kann:
Namen werden in Python klein_mit_unterstrich geschrieben. Ausgenommen sind die Namen von Klassen (PascalCase) und die von Konstanten (KOMPLETT_GROSS).
Namen von Funktionen sollten von Ihrer Tätigkeit abgeleitet sein, die Namen von Variablen nach Ihrem Inhalt.
Die Funktion "Division" sollte also besser "dividiere" heißen.
"Eingabe" ist ein sehr generischen Name. Da würdest du bestimmt auch etwas finden, das sprechender ist.
Namen werden in Python klein_mit_unterstrich geschrieben. Ausgenommen sind die Namen von Klassen (PascalCase) und die von Konstanten (KOMPLETT_GROSS).
Namen von Funktionen sollten von Ihrer Tätigkeit abgeleitet sein, die Namen von Variablen nach Ihrem Inhalt.
Die Funktion "Division" sollte also besser "dividiere" heißen.
"Eingabe" ist ein sehr generischen Name. Da würdest du bestimmt auch etwas finden, das sprechender ist.
Wenn ich raten darf (und der gezeigte Code vollständig ist): nach dem "else:"pillmuncher hat geschrieben: ↑Freitag 24. November 2023, 00:55Dann wissen wir, wo im Code der Fehler auftritt.
Was meinst Du mit Debug-Modus? Und wie führst Du den Code aus? Wenn man die Zeilen in eine datei.py kopiert und diese ausführt gibt es keinen SyntaxError.
Variablen und Funktionen werden komplett klein geschrieben.
Die Fehlerbehandlung muß korrekt sein, bei Dir ist es aber im Fehlerfall (ungültige Eingabe) so, dass Du nach dem else-Block so weiter machst, als ob nichts wäre und Du dann natürlich in einen NameError hineinläufst, weil im else-Block `Resultat` gar nicht definiert wird.
Variablen und Funktionen werden komplett klein geschrieben.
Die Fehlerbehandlung muß korrekt sein, bei Dir ist es aber im Fehlerfall (ungültige Eingabe) so, dass Du nach dem else-Block so weiter machst, als ob nichts wäre und Du dann natürlich in einen NameError hineinläufst, weil im else-Block `Resultat` gar nicht definiert wird.