Python And-operator macht nicht was er soll - oder doch?

MeandXP

Ensign
Registriert
Juli 2009
Beiträge
171
And-operator macht nicht was er soll - oder doch? [Gelöst]

Hi Leute,

Da ich heute mal meine Pythonkenntnisse wieder erweitert habe hatte ich lust ein Programm zu schreiben. Das folgende skript ist ein Ausschnitt aus meinem Programm und soll die Eingabe des Benutzers überprüfen. Wenn die erste Stelle eine 2 und die letzte Stelle ein a ist dann hat man es geschafft. Das Problem ist allerdings dass es reicht entweder an den Anfang eine 2 oder ans ende ein a zu setzen!
Hab ich den Operator falsch eingesetzt oder gibt es noch einen anderen?
(Es handelt sich hier hauptsächlich um Zeile 11.)

Code:
while True:
    guess = input("Now make your guess: ")
    if guess=='exit':
        exit()
    elif guess=='hint':
        print("You fucking cheater! You had your chance!")
        guess='00000'
    elif len(guess)<5 or len(guess)>5:
        print("Fail! Didn't you read the Hint?")
        guess='00000'
    elif guess[0]!='2' and guess[4]!='a':
        print("Fail! Just try again.")
    else:
        break
print("Good Job man! You killed the code!")

Ich hoffe ihr könnt mir helfen,
MeandXP.
 
Zuletzt bearbeitet:
> elif guess[0]!='2' and guess[4]!='a':

Nach deiner Beschreibung müsste das ein "or" sein.

Übrigens kann ich kein Python, aber das Problem ist hier sicher deine Logik.
 
Ou Scheiße, Denkfehler
hammer.gif


Super Danke!!
 
Zuletzt bearbeitet:
probier mal in der besagten zeile statt dem AND ein OR, dann sollte es funktionieren
EDIT: zu spät :(
 
Zurück
Oben