While-Schleife, Abfrage der Bedingung außerhalb der Schleife?!
Verfasst: Dienstag 17. Mai 2022, 17:15
Hallo zusammen,
sitze an einer Aufgabe aus einem Buch, ein kleines Ratespiel:
Irgendwie verstehe ich das Prinzip der While-Schleife noch nicht, ich möchte ja alle Eingaben außer "k,z,e" abfagen, aber wie mache ich das innerhalb der Schleife, wenn die Wahl der Option außerhalb erfolgt.
Entweder die Schleife läuft endlos, oder ich bekomme eine Fehlermeldung:
wenn ich die Variable "antwort" nicht vorher zuweise (Zeile 5).
Komme einfach nicht weiter...
sitze an einer Aufgabe aus einem Buch, ein kleines Ratespiel:
Code: Alles auswählen
import random as rd
import sys
while True:
wahl=rd.choice(["k", "z"])
antwort=input("Kopf oder Zahl (k/z), e für Ende: ")
while antwort!="k" and antwort!="z" and antwort!="e":
antwort=input("Kopf oder Zahl (k/z), e für Ende: ")
print("Fehler")
continue
if antwort=="e":
print("Vielen Dank für das Spiel!")
sys.exit()
if antwort==wahl:
print("Gewonnen")
if wahl=="k":
print("Ich habe auch Kopf gewählt\n")
elif wahl=="z":
print("Ich habe auch Zahl gewählt\n")
else:
print("Pech!")
if wahl=="k":
print("Ich habe Kopf gewählt\n")
elif wahl=="z":
print("Ich habe Zahl gewählt\n")
Irgendwie verstehe ich das Prinzip der While-Schleife noch nicht, ich möchte ja alle Eingaben außer "k,z,e" abfagen, aber wie mache ich das innerhalb der Schleife, wenn die Wahl der Option außerhalb erfolgt.
Entweder die Schleife läuft endlos, oder ich bekomme eine Fehlermeldung:
Code: Alles auswählen
NameError: name 'antwort' is not defined
Komme einfach nicht weiter...