While-Scheife

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
mandy_1993
User
Beiträge: 3
Registriert: Dienstag 7. März 2023, 12:21

Hallo zusammen,

ich bin ein ziemlicher Neuling in python und komme bei diesem einfachen Statement nicht weiter, weil ich mit dem Fehler nichts anfangen kann. Ich möchte nur, dass die WHILE-Scheife so lange durchlaufen wird, bis der Anwender eine gültige Farbe gewählt hat.

Über INPUT.... wählt der Anwender ja z.B. "red" aus und dies soll dann der Variablen user_colors zugewiesen werden...

FEHLERMELDUNG:
if color_choice in colors:
IndentationError: unexpected indent


MEIN CODING:
colors = ["red","green","blue","orange","purple","yellow"]

user_colors = []
while True:
print("Verfügbare Farben sind: ", colors)
color_choice = input("Geben Sie eine der verfügbaren Farben ein: ")

if color_choice in colors:
user_colors.append(color_choice)
colors.remove(color_choice)
print(color_choice, " hinzugefügt")

elif color_choice =="":
break

else:
print("Diese Farbe ist nicht verfügbar !")



Ich danke Euch herzlich für Eure Hilfe.

Mandy
Benutzeravatar
Dennis89
User
Beiträge: 1153
Registriert: Freitag 11. Dezember 2020, 15:13

Hallo,

nach einer 'if'-Abfrage musst du den Code, der dann ausgeführt werden soll, einrücken.


Grüße
Dennis
"When I got the music, I got a place to go" [Rancid, 1993]
Benutzeravatar
Kebap
User
Beiträge: 687
Registriert: Dienstag 15. November 2011, 14:20
Wohnort: Dortmund

Damit die Einrückungen auch hier im Forum angezeigt werden, benutzt du beim Posten über der Textbox den Code-Button, der so aussieht: </>
MorgenGrauen: 1 Welt, 8 Rassen, 13 Gilden, >250 Abenteuer, >5000 Waffen & Rüstungen,
>7000 NPC, >16000 Räume, >200 freiwillige Programmierer, nur Text, viel Spaß, seit 1992.
Sirius3
User
Beiträge: 17741
Registriert: Sonntag 21. Oktober 2012, 17:20

Einrückungen sind in Python wichtig. Alles, was gleich weit eingerückt ist, gehört zum selben Code-Block.
Das if, elif und else sind uneinheitlich eingerückt und passen nicht zum while-Block.
Das `break´ ist auch ein Leerzeichen zu weit eingerückt, weil man immer 4 Leerzeichen pro Ebene einrückt.

Code: Alles auswählen

colors = ["red","green","blue","orange","purple","yellow"]

user_colors = []
while True:
    print("Verfügbare Farben sind: ", colors)
    color_choice = input("Geben Sie eine der verfügbaren Farben ein: ")
    
    if color_choice in colors:
        user_colors.append(color_choice)
        colors.remove(color_choice)
        print(color_choice, " hinzugefügt")
        
    elif color_choice =="":
        break
        
    else:
        print("Diese Farbe ist nicht verfügbar !")
mandy_1993
User
Beiträge: 3
Registriert: Dienstag 7. März 2023, 12:21

klasse, das war mein Fehler, vielen Dank
Antworten