Stelle sicher, dass alles innerhalb der Schleife um eine Stufe eingerückt ist!
Verwende for-Schleifen, wenn du etwas eine feste Anzahl von Malen wiederholen möchtest.
# Anstatt Code immer wieder zu wiederholen
forward(10)
left(90)
forward(10)
left(90)
forward(10)
left(90)
forward(10)
left(90)
# Verwende eine for-Schleife, um den Code zu wiederholen!
for i in range(4):
forward(10)
left(90)
Du kannst die Variable i innerhalb der Schleife verwenden.
i beginnt bei 0 und geht bis zu ENDWERT-1 (der Wert in den Klammern nach range).
# Dies lässt Tracy 0, dann 1, dann 2 nach vorne bewegen
for i in range(3):
forward(i)
left(90)
# Du kannst den Wert von i innerhalb einer for-Schleife mit mathematischen Ausdrücken ändern
for i in range(3):
forward(i * 10)
left(90)
Du kannst den Wert von i auch mit erweiterten Parametern steuern:
for i in range(STARTWERT, ENDWERT, INKREMENT):
# Dies wird Tracy 30, 40, 50, 60 und 70 Pixel nach vorne bewegen
for i in range(30, 80, 10):
forward(i)
Hinweis: Der Endwert ist nicht inbegriffen.
Verwende while-Schleifen, wenn du etwas eine unbekannte Anzahl von Malen wiederholen möchtest oder bis eine Bedingung falsch wird.
Wenn es keinen Punkt gibt, an dem die Bedingung falsch wird, erstellst du eine Endlosschleife, was immer vermieden werden sollte!
# Zeichne weiterhin Kreise, bis die Variable count größer als 5 ist
# Wenn die Variable count nicht aktualisiert wird, tritt eine Endlosschleife auf
count = 0
while count <= 5:
circle(50)
count = count + 1
Du kannst auch Benutzereingaben verwenden, um eine while-Schleife zu steuern.
# Dieser Code wird weiter ausgeführt, solange der Benutzer 'Ja' antwortet
should_continue = input("Code fortsetzen?: ")
while should_continue == "Ja":
forward(10)
left(90)
should_continue = input("Code fortsetzen?: ")
Eine Bedingung, die wir verwenden können, ist while True:, die alleine eine Endlosschleife erzeugen würde, was wir nicht wollen.
Wenn wir diese Bedingung aber mit einer break-Anweisung irgendwo innerhalb der Schleife kombinieren, gibt es eine Möglichkeit, die Schleife zu verlassen, und die Endlosschleife kann unterbrochen werden.
# Dieser Code wird weiter ausgeführt, solange der Benutzer 'Ja' antwortet
while True:
should_continue = input("Code fortsetzen?: ")
if not should_continue == "Ja":
break # bricht die aktuelle Schleife ab
else:
forward(10)
left(90)
Hinweis: Die break-Anweisung wird nicht von Klammern gefolgt.