Seite 1 von 1
Ich versteh das nicht (Fehlermeldung)
Verfasst: Sonntag 23. Februar 2020, 22:18
von DeroZaza
Der Code lautet:
a = eval(input("Bitte geben sie irgendeinen Wert ein: "))
if a == 5:
print ("Die Eingabe war richtig.")
If a != 5:
print ("Die Eingabe war falsch.")
Und cmd gibt die Fehlermeldung bei der vierten Zeile " If a != 5:" an. Bei "a" genauer gesagt.
Re: Ich versteh das nicht (Fehlermeldung)
Verfasst: Sonntag 23. Februar 2020, 22:30
von __deets__
Bitte in Zukunft Code Tags benutzen, damit die wichtigen Einrückungen erhalten bleiben.
Und wenn das wirklich dein Code ist, dann ist das If falsch. Das muss klein geschrieben werden.
Re: Ich versteh das nicht (Fehlermeldung)
Verfasst: Sonntag 23. Februar 2020, 22:41
von sparrow
1. Schreib deinen Code hier in code-Tags, damit die Einrückung erhalten bleibt. Die Tags werden eingefügt, wenn du im Vollständigen Editor & Vorschau (Knopf unter der Schnellantwort) auf den </> Button drückst.
2. Ich würde sagen, das erste Zeichen in der bemängelten Zeile unterscheidet sich marginal von der 2 Zeilen darüber.
3. Hinter das print solltest du kein Leerzeichen schreiben. Es ist ein Methodenaufruf und zwischen Methode und Parameterliste gehört kein Leerzeichen
4. Du kannst statt des 2. if lieber else verwenden. Denn wenn es nicht 5 ist, ist es auf jeden Fall .... nicht 5.
5. eval ist unschön. Vergiss am besten, dass es das gibt. Denn alles, was dann eingegeben wird, wird vom Interpreter direkt ausgeführt. Im Zweifelsfall auch der Befehl deine Platte zu löschen oder sonst irgendwas. Versuch eine ander Methode zu finden, damit das Ergebnis keine Zeichenkette ist. Das ist spannend
Entschuldigung. Ich mag heute Aufzählungen.
Re: Ich versteh das nicht (Fehlermeldung)
Verfasst: Montag 24. Februar 2020, 07:02
von Sirius3
Ich würde noch hinzufügen:
6. Wenn es Fehler gibt, bitte die gesamte Fehlermeldung inklusive Traceback posten, das macht die Fehlersuche deutlich einfacher (SyntaxError: invalid syntax).
7. Eingerückt wird in Python per Konvention immer mit 4 Leerzeichen pro Ebene, nicht einem.
Re: Ich versteh das nicht (Fehlermeldung)
Verfasst: Dienstag 25. Februar 2020, 16:10
von DeroZaza
Das Problem lag daran, dass ich das "if" bei Zeile 4 groß geschrieben habe. Vielen Dank für die schnelle Hilfe von euch, ich bin noch ein Anfänger. Hier die überarbeitete Version:
Code: Alles auswählen
a = int(input("Bitte geben sie irgendeinen Wert ein: "))
if a == 5:
print("Die Eingabe war richtig.")
if a != 5:
print("Das war falsch.")
Re: Ich versteh das nicht (Fehlermeldung)
Verfasst: Dienstag 25. Februar 2020, 16:16
von Sirius3
Hier nochmal zur Erinnerung:
- Eingerückt wird in Python per Konvention immer mit 4 Leerzeichen pro Ebene, nicht einem.
- Wenn die Bedingung des zweiten ifs genau das Gegenteil des ersten ifs ist, dann benutzt man else.
Re: Ich versteh das nicht (Fehlermeldung)
Verfasst: Dienstag 25. Februar 2020, 19:02
von DeroZaza
Habs mit dem Einrücken glaub ich endlich gecheckt
Code: Alles auswählen
a = int(input("Bitte geben sie irgendeinen Wert ein: "))
if a == 5:
print("Die Eingabe war richtig.")
else :
print("Die Eingabe war falsch.")
Re: Ich versteh das nicht (Fehlermeldung)
Verfasst: Dienstag 25. Februar 2020, 19:42
von __blackjack__
Nicht ganz. Das ist ein Tab und nicht vier Leerzeichen.
Re: Ich versteh das nicht (Fehlermeldung)
Verfasst: Mittwoch 26. Februar 2020, 14:56
von DeroZaza
Alles klar.
Code: Alles auswählen
a = int(input("Bitte geben sie irgendeinen Wert ein: "))
if a == 5:
print("Die Eingabe war richtig.")
else :
print("Die Eingabe war falsch.")