Appearance
🔁 Schleifen 🐢🐢🐢
Schleifen? FOR WHAT?!
Einstieg: Worum geht es in diesem Kapitel?
In der letzten Einheit hast du Formen Schritt für Schritt mit einzelnen Befehlen gezeichnet. Das funktioniert gut, aber sobald sich etwas wiederholt, wird der Code schnell lang und unübersichtlich.
Schleifen helfen dir dabei, solche Wiederholungen einfacher darzustellen. Du schreibst einen Befehl nicht mehr zehnmal untereinander, sondern sagst Python: Wiederhole diesen Codeblock mehrmals.
Merksatz
Schleifen helfen dir, wiederkehrende Abläufe kurz und übersichtlich zu schreiben.
Arbeiten in einer Datei
In dieser Einheit arbeitest du in einem einzigen Python-Programm, das du Schritt für Schritt erweiterst.
Das bedeutet:
- Du löst alle Challenges im selben File.
- Du strukturierst deinen Code.
- Du kommentierst deine Lösungen aus oder platzierst die verschiedenen Zeichnungen an passenden Stellen.
Zum Beispiel:
python
# Challenge 1
# Dreieck
"""
Challenge 2:
Fünfeck
"""So behältst du den Überblick. Außerdem kannst du später besser nachvollziehen, welche Lösung zu welcher Challenge gehört.
Hinweis
Wenn mehrere Zeichnungen in einem Python-File stehen, musst du besonders auf Positionen achten. Sonst landen alle Formen übereinander.
Grundlagen: Wiederholungen verstehen
Ohne Schleife
Ein Quadrat kann so gezeichnet werden:
python
import turtle
turtle.forward(100)
turtle.left(90)
turtle.forward(100)
turtle.left(90)
turtle.forward(100)
turtle.left(90)
turtle.forward(100)
turtle.left(90)
turtle.done()Der Code funktioniert, aber du erkennst sofort: Es wiederholt sich immer dasselbe Muster.
Mit Schleife
Das gleiche Ergebnis geht deutlich kürzer:
python
import turtle
for i in range(4):
turtle.forward(100)
turtle.left(90)
turtle.done()range(4) bedeutet vier Wiederholungen. Die Einrückung bestimmt, welche Befehle zur Schleife gehören.
Wichtig
Alles, was zur Schleife gehört, muss eingerückt sein. Nicht eingerückte Befehle werden nicht wiederholt.
Beobachten und verstehen
Verändere den Code und beobachte:
- die Anzahl in
range(...) - den Winkel
- die Länge bei
forward(...)
Was passiert?
Hinweis
Ändere immer nur eine Sache auf einmal. So erkennst du besser, welche Änderung welche Wirkung hat.
🐢 Challenge 1: Dreieck, Fünfeck und Achteck
Zeichne:
- ein Dreieck
- ein Fünfeck
- ein Achteck
alles in deinem Programm bzw. Python-File.

Achte darauf, dass die Formen an passenden Stellen erscheinen und sich nicht überlappen.
Hinweis
Nutze penup(), setposition() und pendown(), wenn du die Turtle an eine neue Stelle setzen möchtest.
Vielecke verstehen
Der Zusammenhang mit 360°
Ein Kreis hat 360°.
Für regelmäßige Vielecke gilt:
python
Winkel = 360 / Anzahl_der_SeitenBei einem Quadrat ist das:
python
360 / 4Bei einem Fünfeck ist das:
python
360 / 5Je mehr Seiten eine Form hat, desto kleiner wird der Drehwinkel.
Merksatz
Bei regelmäßigen Vielecken kannst du den Drehwinkel mit 360 / Seitenanzahl berechnen.
Variablen verwenden
Eine Variable kann einen Wert speichern:
python
seiten = 5Damit kannst du flexibler arbeiten und dein Programm leichter anpassen. Statt überall direkt eine Zahl einzutragen, verwendest du einen Namen.
Zum Beispiel:
python
seiten = 5
for i in range(seiten):
turtle.forward(100)
turtle.left(360 / seiten)Wenn du später ein anderes Vieleck zeichnen möchtest, musst du nur den Wert der Variable ändern.
Hinweis
Variablen machen Programme leichter veränderbar. Du musst nicht an vielen Stellen im Code dieselbe Zahl suchen und ersetzen.
🐢 Challenge 2: Vieleck mit frei wählbarer Seitenanzahl
Zeichne ein Vieleck mit frei wählbarer Seitenanzahl an passender Stelle.
Wähle zum Beispiel:
- 9 Seiten
- 13 Seiten
- 20 Seiten

Verwende dafür eine Variable.
Hinweis
Lege zuerst die Seitenanzahl in einer Variable fest. Verwende diese Variable dann sowohl in range(...) als auch bei der Winkelberechnung.
Wichtig
Setze beim Winkel nicht einfach irgendeine Zahl ein. Überlege, wie der Winkel aus der Seitenanzahl berechnet werden kann.
Wissensspeicher: Turtle-Befehle aus den bisherigen Einheiten
💡 Wissensspeicher – Turtle-Befehle
Diese Befehle solltest du inzwischen kennen und gezielt einsetzen können:
python
turtle.forward(100)
turtle.backward(50)
turtle.left(90)
turtle.right(45)
turtle.speed(10)
turtle.color("orange")
turtle.colormode(255)
turtle.color(255, 0, 0)
turtle.penup()
turtle.pendown()
turtle.setposition(100, -50)
turtle.begin_fill()
turtle.end_fill()Wenn du Farben mit drei Zahlen wie turtle.color(255, 0, 0) verwenden willst, brauchst du vorher:
python
turtle.colormode(255)Damit legst du fest, dass die Farbwerte von 0 bis 255 verwendet werden.
Wenn du Farbwerte nachschauen oder ausprobieren möchtest, kannst du einen Color Picker verwenden:
🐢 Challenge 3: Formen aus der Vorlage zeichnen
Zeichne alle Formen aus der Vorlage in derselben Datei.

Achte darauf, dass die Formen an passenden Stellen erscheinen und sich nicht überlappen. Arbeite weiterhin in deinem bestehenden Python-File und trenne deine Lösungen sinnvoll durch verschiedene Positionen oder Kommentare.
Hinweis
Nutze penup(), setposition() und pendown(), um die Turtle an eine neue Stelle zu setzen. Für die Farben können pencolor() und fillcolor() hilfreich sein sowie für die Stiftbreite pensize().
Besondere Muster: Sterne und Strahlen
Einen Stern zeichnen ⭐
Nicht alle Formen folgen der Regel 360° / Seitenanzahl. Sterne sind ein gutes Beispiel dafür.
python
import turtle
for i in range(5):
turtle.forward(100)
turtle.right(144)
turtle.done()Beim Stern entsteht die Form nicht durch einen Außenwinkel eines regelmäßigen Vielecks, sondern durch ein bestimmtes Überspringen von Punkten.
Merksatz
Nicht jedes Muster folgt derselben Regel. Manchmal musst du experimentieren und beobachten.
🐢 Challenge 4: Stern
Zeichne nun diesen Stern.

Beobachte und experimentiere. Orientiere dich an der Vorgabe.
Hinweis
Achte besonders darauf, wie oft sich die Bewegung wiederholt und welcher Drehwinkel verwendet wird.
Muster aus wiederholten Bewegungen
Wenn sich Bewegungen wiederholen und leicht verändern, entstehen Muster. Du kannst zum Beispiel vorwärts und rückwärts zeichnen, danach die Turtle drehen und denselben Ablauf erneut ausführen.
Solche Muster sehen oft komplex aus, obwohl sie aus wenigen Befehlen bestehen.
Hinweis
Bei Mustern ist es hilfreich, zuerst eine einzelne Bewegung zu testen. Danach kannst du sie mit einer Schleife wiederholen.
🐢 Challenge 5: Sonnenstrahlen 🎨
Versuche, ein Muster zu zeichnen, das wie eine Sonne oder ein Strahlenkreis aussieht.

Beobachte und experimentiere. Orientiere dich an der Vorgabe.
Hinweis
Überlege, welche Bewegung sich wiederholt und wie stark sich die Turtle nach jeder Wiederholung drehen muss.
Exkurs: Weitere Turtle-Befehle
Neue Befehle ausprobieren
Turtle bietet noch viele weitere Befehle. Einige sind nur Kurzformen, andere verändern die Position, löschen Zeichnungen oder setzen Markierungen.
python
turtle.rt(100)
turtle.fd(100)
turtle.lt(100)
turtle.bk(100)
turtle.home()
turtle.circle(100)
turtle.undo()
turtle.clear()
turtle.stamp()Teste neue Befehle und schreibe kurze Kommentare dazu.
Hinweis
Teste immer nur einen neuen Befehl auf einmal. Schreibe als Kommentar dazu, was du beobachtest.
Kurze Befehlsnamen
Manche Befehle gibt es auch als Kurzform:
python
turtle.fd(100)
turtle.bk(100)
turtle.rt(90)
turtle.lt(90)Diese Kurzformen bedeuten:
fd=forwardbk=backwardrt=rightlt=left
Hinweis
Kurzformen sind praktisch, aber ausgeschriebene Befehle sind oft leichter lesbar.
🐢 Vertiefende Challenge: Fehler finden
In diesem Programm steckt ein Denkfehler:
python
import turtle
seiten = 6
for i in range(5):
turtle.forward(100)
turtle.left(360 / seiten)
turtle.done()Finde und korrigiere den Fehler.
Du sollst:
- den Fehler finden und korrigieren
- keine fixe Zahl einsetzen
- Prof. Egger das Problem erklären können
- die korrigierte Zeichnung an einer freien Stelle in deiner Datei platzieren
Wichtig
Setze nicht einfach 6 in range(...) ein. Die Lösung soll mit der Variable zusammenhängen.
Hinweis
Vergleiche, welche Bedeutung seiten hat und wie oft die Schleife tatsächlich ausgeführt wird.
Allgemeines zum Erlernen einer Programmiersprache
Gerade bei Schleifen lernst du viel, wenn du kleine Änderungen machst und genau beobachtest, was sich verändert. Verändere zum Beispiel die Anzahl der Wiederholungen, den Winkel oder die Länge der Linien und vergleiche die Ergebnisse.
So verstehst du Schritt für Schritt besser, wie Wiederholung und Struktur zusammenhängen. Fehler gehören dabei dazu und helfen dir oft, dein Programm besser zu verstehen.
Merksatz
Programmieren lernst du nicht durch Abschreiben, sondern durch Beobachten, Verändern, Testen und Erklären.
Wissensspeicher
Wichtige Begriffe
Schleife Ein Codeblock, der mehrfach ausgeführt wird.
for-Schleife Eine Schleife, bei der Python eine bestimmte Anzahl von Wiederholungen ausführt.
range(...) Legt fest, wie oft eine Schleife wiederholt wird.
Einrückung Zeigt in Python, welche Befehle zu einem Codeblock gehören.
Variable Ein Name, unter dem ein Wert gespeichert wird.
Winkel Gibt an, wie stark sich die Turtle dreht.
Vieleck Eine Form mit mehreren Seiten, zum Beispiel Dreieck, Fünfeck oder Achteck.
penup() Hebt den Stift an, damit die Turtle sich bewegen kann, ohne zu zeichnen.
pendown() Setzt den Stift wieder ab, damit die Turtle zeichnet.
setposition() Setzt die Turtle an eine bestimmte Position.
pencolor() Legt die Linienfarbe fest.
fillcolor() Legt die Füllfarbe fest.
pensize() Legt die Breite der Linie fest.
Abschlussgedanke
Schleifen sind ein wichtiger Schritt vom einfachen Zeichnen zum strukturierten Programmieren. Sie helfen dir, wiederholte Abläufe zu erkennen und kürzer zu formulieren. Variablen machen deinen Code zusätzlich flexibler, weil du Werte nicht mehrfach im Programm ändern musst.