Du zeichnest eine geometrische Figur in Scratch und dann übersetzt du das Programm in die Programmiersprache Python.
Übungsbeispiel: Erste Schritte in Python
Um in Scratch zu zeichnen, muss man zuerst die Erweiterung „Malstift“ laden. Klicke dazu auf das Symbol in der linken unteren Ecke und wähle dann den Malstift aus. Damit bekommst du einen neuen Eintrag „Malstift“ im Menü am linken Bildschirmrand und eine Menge neuer Blöcke, die du zum Zeichnen verwenden kannst.
Um ein beliebiges Vieleck (Fünfeck, Achteck, Siebzehneck, …) zu zeichnen, definieren wir einen eigenen Block, wo wir uns aussuchen können, wie viele Ecken und welche Seitenlänge es haben soll.
Gehe dazu unter dem Menüpunkt „Meine Blöcke“ auf „Neuer Block“. Nenne den Block Vieleck und füge zwei Eingabefelder für Zahl hinzu und nenne die Eingabefelder n (für die Anzahl der Ecken und a (für die Seitenlänge des Vielecks).
Um ein n-Eck zu zeichnen müssen wir einen Schritt mit der Seitenlänge a gehen, dann eine Drehung um 360/n machen und das Ganze n-Mal wieder wiederholen. (Für ein regelmäßiges Viereck, also ein Quadrat, wären das n Wiederholungen und dazwischen eine Drehung um 90 Grad.) Die roten Felder mit den Variablen n und a, die du hier brauchst, holst du einfach aus dem ersten Block „Definiere Vieleck“, indem du die gewünschte Variable einfach mit der Maus nach unten ziehst.
Wir definieren nun zwei Variablen Anzahl (für die Anzahl der Vielecke) und n (für die Anzahl der Ecken im Vieleck). Gehe dazu unter „Variablen“ auf „Neue Variable“ und gib die passenden Namen ein. Wenn du mit der rechen Maustaste auf die angezeigte Variable klickst, kannst du auch einen verstellbaren Schieberegler daraus machen.
Mit dem selbst definierten Block zum Zeichnen von Vielecken können wir nun ein buntes geometrisches Muster mit vielen Vielecken zeichnen.
Wenn das Spiel gestartet wird, dann führen wir folgende Schritte durch:
So kannst du zum Beispiel 30 verschiedenfärbige 9-Ecke zeichnen.
Starte für Python die Programmierumgebung IDLE und öffne eine neue Datei (File -> New File
) und speichere die Datei auf deinem Computer (File -> Save As
).
So wie du auch in Scratch eine eigene Erweiterung für den Malstift geladen hast, musst du auch in Python eine Erweiterung (Package) für das Zeichnen mit der Schildkröte (turtle
) laden.
Auch für das Zufallszahlen (die wir dann für die zufällige Auswahl der Farben brauchen) ist es notwendig eine Funktion aus dem Package random
zu laden.
from turtle import *
from random import random
Da wir aus dem Package turtle mehrere Funktionen benötigen, laden wir hier alle Funktionen (mit dem Symbol *). Aus dem Package random
laden wir nur die Funktion random
.
So wie wir in Scratch einen eigenen Block zum Zeichnen von Vielecken erstellt haben, definieren wir hier in Python eine eigene Funktion vieleck
ebenfalls mit den Eingabewerten n
und a
.
def vieleck(n, a):
for i in range(n):
forward(a)
right(360/n)
Das n-malige Wiederholen geschieht mit einer for
-Schleife, wobei die Variable i
mitzählt.
Achtung: In Python beginnt man mit 0 beim Zählen und nicht bei 1 und die Zahl, die in range angegeben ist, zählt nicht mehr dazu. Also, wenn n = 10 ist, dann zählt i in range(n)von 0, 1, 2, … bis 9. Das sind aber dann trotzdem 10 Zahlen, du kannst gerne nachzählen.
Alles was in zu dieser for
-Schleife gehört muss um vier Leerzeichen eingerückt werden (so wie du in Scratch die Blöcke in den Wiederholen-Block hineinpackst). forward(a)
lässt die Turtle um a Schritte vorwärts gehen, right(360/n)
machte eine Rechtsdrehung um 360/n Grad.
Wir definieren, so wie Scratch, Variablen für die Anzahl der Vielecke und die Anzahl der Ecken eines Vielecks. Auch die Seitenlänge des Vielecks legen wir gleich fest. Um deinen Python-Code auch später noch gut zu verstehen, ist es hilfreich, wenn du Kommentare einfügst. Alles was du hinter einem # schreibst, dient als Erklärung für dich, hat aber keinen Einfluss auf das Programm selbst.
anzahl = 30 # Anzahl der Vielecke
n = 9 # Anzahl der Ecken des Vielecks
a = 50 # Seitenlänge des Vielecks
Nun können wir mit dem eigentlichen Programm beginnen:
clear()
speed(1000)
pensize(3)
for i in range(anzahl):
pencolor(random(), random(), random())
vieleck(n, a)
left(360/anzahl)
Wenn du diesen Code fertig geschrieben hast, speichere die Datei nochmals mit File -> Save
(oder drücke STRG+S). Um dann das Programm zu starten kannst du im Menü Run -> Run Module
auswählen oder schneller einfach F5 drücken.
Du erhältst dann das Bild, das zu Beginn dieser Anleitung zu sehen ist (vermutlich mit etwas anderen Farben).
Hier kannst du den gesamten [Python Sourcecode downloaden](source/Von Scratch zu Python.pyw). Und hier findest du das [Scratch Project](source/Von Scratch zu Python.sb3).