Python Code?
Warum kommt bei meinem Code immer raus das er nicht stimmt auch wenn er stimmt?
richtiges_passwort = 2801
passwort_eingabe = input('Wie lautet das Passwort?\n')
if passwort_eingabe == richtiges_passwort:
print('Das Passwort ist richtig')
else:
print('Das Passwort ist falsch')
3 Antworten
ich habe keine Ahnung von Python, aber du deklarierst das Passwort als Integer. input() wird aber einen String zurückgeben. Ich weiß nicht, ob Python eine implizite Konvertierung von Int nach String vornimmt, aber das könnte das Problem sein. Versuch doch mal die 2801 in Anführungszeichen zu setzen
Mit der Funktion input erhälst du den String von dem, was im Input steht. Ein String ist im Grunde eine Zeichenkette, wenn du print(type(passwort_eingabe)) einfügst, wirst du sehen, dass der Typ von passwort_eingabe String ist.
richtiges_passwort ist bei dir hingegen nur ein Integer (also eine Ganze Zahl).
passwort_eingabe == richtiges_passwort wird also immer falsch sein, da ein String mit einem Integer verglichen wird.
Du musst stattdessen int(passwort_eingabe) == richtiges_passwort hinschreiben, damit wird die Eingabe zu einem Integer umgewandelt, wodurch beides vergleichen werden kann.
Hast du die Zahl 2801 eingegeben? Also nicht als String geschrieben.