Frage von nesamaxisinho, 43

Frage zu Python Code?

Servus ! Ich vin grade dabei mir Python beizubringen und habe derletzt ein kleines Programm geschrieben:

list= [5, 10, 15, 20 ] A=1

x=True while x==True : if A in list: A=A+1 else: #mach was anderes

Ich möchte, dass meine Variable A um 1 erhöht wird, wenn sie Element der Liste ist. Nur leider Funktioniert das Programm so nicht. Wo ist der Fehler?

Hilfreichste Antwort - ausgezeichnet vom Fragesteller
von NDDT1, 18

Ich verstehe noch nicht ganz was das Programm bewirken soll. Willst du alle Elemente der Liste um 1 erhöhen?

Du kannst eine Liste durchlaufen:

list = [5, 10, 15, 20 ]
for i in list
pass
Antwort
von Schachpapa, 23

Ich nehme mal an, dein Programm sieht so aus:

list= [5, 10, 15, 20 ] 
A=1
x=True
while x==True :
if A in list:
A=A+1
else: #mach was anderes
pass

Das funktioniert, nur siehst du keinen Effekt. Du setzt A auf 1 und prüfst in einer Endlosschleife ob A gleich 5 10 15 oder 20 ist. Ist es aber nicht, deshalb wird die Schleife immer wieder ausgeführt, ohne dass etwas passiert. Vielleicht solltest du die umgebende while-Schleife weglassen. Dann wird zwar auch nichts passieren, aber  das Programm wird zumindest beendet.

Antwort
von LifeArtist1, 9

Ich möchte, dass meine Variable A um 1 erhöht wird, wenn sie Element der Liste ist. Nur leider Funktioniert das Programm so nicht. Wo ist der Fehler?

Solltest du wirklich nur das wollen was du fragst schreibst du einfach:

numlist = [5, 10, 15, 20]
if A in numlist:
    A += 1  #ist gleich A = A+1

Und das wars auch schon.

noch was:
dein x = True kannst du weglassen. Möchtest du eine endlosschleife schreibst du einfach nur:

while True:
    # do something else

Keine passende Antwort gefunden?

Fragen Sie die Community