4
9
2
Was Schildkröten mit
Grafik zu tun haben:
Tu r t l e - G r a f i k
Bevor dir nun womöglich langweilig wird wegen der vielen Erklärungen
über Zeichen und Zahlen, wollen wir lieber ein paar Grafiken zeichnen.
In diesem Kapitel lernst du ...
$
ein Software-Tierchen namens Turtle kennen. Es wohnt im Turtle-
Grafik-Modul
turtle.py
.
$
einige Anweisungen kennen, die die Turtle zum Zeichnen bringen.
$
wie du dir einen Plan machst, um eine Grafik nach deinen Vorstellungen
zu erzeugen…
$
… und diesen dann in ein Programm umsetzt.
50
Was Schildkröten mit Grafik zu tun haben: Turtle-Grafik
Kapitel
2
Die Turtle und der IPI
Im ersten Kapitel hast du erfahren, dass selbst so geläufige Dinge wie die
Quadratwurzel in einem Modul untergebracht sind, das nicht zum Kern der
Sprache Python gehört. Es wird dich daher wohl kaum wundern, dass es
sich mit der Grafik ganz genau so verhält.
In der Tat gibt es verschiedene Grafik-Module, mit denen man in Python
arbeiten kann.
Zum Programmierenlernen finde ich die so genannte Turtle-Grafik beson-
ders geeignet. Deshalb habe ich – ursprünglich für die Arbeit mit diesem
Buch - ein Turtle-Grafik-Modul geschrieben: es heißt
turtle.py
. Seit
Python 2.6 ist dieses Modul in die Standardbibliothek von Python aufge-
nommen worden. Das heißt, wenn du Python 3.1 installiert hast, ist es
schon mit dabei.
Interaktive Grafik und die IDLE
Damit du mit dem
interaktiven Python-Interpreter
Grafik-Befehle aus-
führen kannst, braucht die IDLE
unbedingt
eine ganz bestimmte Einstel-
lung.
Mehr über diese Einstellung findest du in Anhang A, ab Seite 427.
Der Menüpunkt S
TART
|A
LLE
P
ROGRAMME
|P
YTHON
2.5|IPI-T
URTLE
G
RAFIK
startet
die IDLE mit dieser Einstellung. Alternativ kannst du dazu auch das Icon
IPI-T
URTLE
G
RAFIK
doppelt anklicken.
Für Turtle-Grafik-Programme: Achte darauf, den
IPI-T
URTLE
G
RAFIK
zu verwenden!
IPI?
Ach ja – das ist meine Abkürzung für »
I
nteraktiver
P
ython-
I
nter-
preter« – ich werde sie ab nun im ganzen Buch für die Form der IDLE
Python Shell verwenden, die besonders für die Turtle-Grafik-Arbeit ein-
gestellt ist. Fast alles, was du in Kapitel 1 über die IDLE(P
YTHON
GUI) ge-
lernt hast, gilt auch für den IPI für die Turtle-Grafik.
51
Die Turtle und der IPI
Nun zur Turtle selbst. Klingt für dich echt spanisch? Na ja – »turtle« ist
doch wieder ein englisches Wort und heißt auf Deutsch
Schildkröte
. Diese
Schildkröte ist es, die auf einer Zeichenfläche Grafiken erzeugt. Sie ist ein
kleines Software-Tierchen und wird im Zeichenfenster grafisch dargestellt.
Der Kopf zeigt in ihre Bewegungsrichtung.
Bevor ich dir lange Erklärungen gebe, verwenden wir den IPI, um zu sehen,
wie das funktioniert. Starte also den IPI-T
URTLE
G
RAFIK
. Es geht ein P
YTHON
S
HELL
-Fenster auf, das etwas anders aussieht als IDLE(P
YTHON
GUI):
>
IPI-Session! Mach mit!
>>> from turtle import *
Wir importieren alle Funktionen aus dem Turtle-Grafik-Modul
turtle
.
(Obwohl wir anfangs nur einige wenige davon verwenden werden.)
>>> forward(100)
So sieht die Shell aus, die für die
Turtle-Grafik gebraucht wird: In
der Titelleiste steht IPI
S
HELL
/
T
URTLE
G
RAFIK
und in der Zeile über
dem ersten Prompt steht
==== No Subprocess ====.
Ins IPI
S
HELL
/
T
URTLE
G
RAFIK
-Fenster
schreibst du die Turtle-Grafik-Befehle.
Im Grafik-Fenster zeichnet die Turtle.
52
Was Schildkröten mit Grafik zu tun haben: Turtle-Grafik
Kapitel
2
Da geht nun ein neues Fenster auf und unsere Schildkröte ist ein Stück
forward
, vorwärts, gewandert.
Verschiebe, falls nötig, die beiden Fenster auf dem Bildschirm so, dass du
weitere Eingaben im IPI-Fenster machen kannst.
Vielleicht ist dir sogar aufgefallen, dass beim Eintippen von
forward()
ein
Tipp erschienen ist: In der ersten Zeile steht, was da jetzt weiter ein-
zugeben ist, nämlich eine Distanz. In der zweiten Zeile steht, was die Funk-
tion
forward()
bewirkt.
»Call-Tipps« helfen dir zu verstehen, wie Turtle-Grafik-Funktionen verwendet werden.
100
gibt also die Distanz an, die die Turtle weitergeht. Und dabei zeichnet
sie eine Strecke.
Experimentieren wir noch ein wenig weiter:
>
Mach mit:
>>> left(90)
>>> forward(60)
>>> left(90)
>>> forward(60)
>>> left(90)
>>> forward(180)
>>> right(90)
>>> forward(100)
>>>
Hat deine Turtle dasselbe gezeichnet wie meine? Wenn nicht, hast du viel-
leicht einen Zahlenwert falsch eingetippt? Einmal versehentlich
left
mit
right
verwechselt? Oder gefällt dir einfach nur die Zeichnung nicht?
>
Kein Problem, mach mit!
>>> undo()
>>> undo()
>>> undo()
>>>

Get Python für Kids now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.