Vollständige und ausführliche Turtle-Dokumentation: https://docs.python.org/3/library/turtle.html
Ausführliche deutsche Dokumentation für Python: https://py-tutorial-de.readthedocs.io/de/python-3.3/
Für Turtle Graphics musst du auf repl.it ein neues repl erstellen. Als Sprache muss dafür "Python (with Turtle)" ausgewählt werden.
- Neue Turtle erstellen
- Basisbewegungen
- Geschwindigkeit ändern
- Stift verändern
- Texte schreiben
- Position abfragen und verändern
- Schildkörte ausblenden
- Screen einrichten
- Screen geöffnet halten
- Steuerung per Tastatur
Weitere hilfreiche Python-Module
import turtle
tina = turtle.Turtle()
tina.color("blue") # black, red, green, yellow, pink ...
tina.shape("turtle") # "arrow", "turtle", "circle", "square", "classic"
tina.forward(100)
tina.backward(100)
tina.left(90) # Angabe in Grad
tina.right(90) # Angabe in Grad
tina.goto(0,0) # goto(x,y)
tina.speed("normal") # "fastest", "fast", "normal", "slow", "slowest"
tina.penup() # Stift anheben
tina.pendown() # Stift senken
tina.pensize(10) # Dicke des Stifts. Standard=1
tina.write("text",align="center") # align kann “left”, “center” oder right” sein
tina.pos() # gibt Vektor mit (x, y) zurück
tina.xcor() # gibt x Koordinate zurück
tina.ycor() # gibt y Koordinate zurück
tina.setx(0) # x Koordinate verändern
tina.sety(0) # y Koordinate verändern
tina.setposition(0, 0) # x und y neu setzen
tina.hideturtle()
window = turtle.Screen()
window.setup(width=400, height=400) # Bildschirmgröße festlegen
window.tracer(0) # Bildschirm wird nur noch manuell aktualisiert
window.bgcolor("#B2FF66") # Hintergrundfarbe
window.update() # Bildschirm aktualisieren
window = turtle.Screen()
# Programm wird nicht beendet, falls dies die letzte Codezeile ist
window.mainloop()
Die Codes für die Pfeiltasten sind: Up
, Down
, Left
und Right
.
window = turtle.Screen()
# Funktion wird ausgeführt, sobald die Taste gedrückt wird
window.onkey(functionName, "Up")
window.listen() # Ab sofort reagiert das Programm auf Tastatureingaben
square_color = "blue" # Texte (Strings) stehen in Anführungszeichen
square_size = 10 # Zahlen (Integers) stehen nicht in Anführungszeichen
str(square_size) # Integers in Strings umwandeln
int("10.9") # Umwandlung von Kommazahlen in Integerwerte (wird immer abgerundet)
Datentyp | Beschreibung | Beispiel |
---|---|---|
Integer | Ganze Zahlen | 1 , 1290 , -432 |
Floating-Point | Kommazahlen | 0.0 , -129.21031 , 0.5 |
String | Texte (immer in Anführungszeichen) | "Hello World" |
foo = 0
def foo_function():
global foo
foo = foo + 1
for count in range(4): # Schleife wird 4 mal ausgeführt
tina.forward(50)
tina.left(90)
counter = 0
while counter < 4: # Schleife wird 4 mal ausgeführt
tina.forward(50)
tina.left(90)
counter = counter + 1
colors = ['red', 'purple', 'blue', 'green']
len(colors) # Länge der Liste, hier 4
# durch alle Element der Liste iterieren
for color_name in colors:
tina.color(color_name)
tina.forward(100)
tina.left(90)
colors.insert(1, 'yellow') # Neues Element an Index 1 einfügen
# => 'red', 'yellow', 'purple', 'blue', 'green'
del colors[0] # erstes Element ('red') löschen
colors[-1] # auf letztes Element in der Liste zugreifen
# Alle Elemente der Liste vom zweiten bis zum letzten ausgeben
for color_name in colors[1:]:
print(color_name)
# Die Funktion zeichnet Quadrate mit der Seitenlänge 50
def square():
for count in range(4):
tina.forward(50)
tina.left(90)
square() # Aufruf der Funktion
# Funktion, die Quadrate unterschiedlicher Seitenlänge zeichnet
# Es wird der Parameter "size" verwendet
def square(size):
for count in range(4):
tina.forward(size)
tina.left(90)
square(100) # Aufruf der Funktion
# Funktion mit Rückgabewert
def add_two_numbers(a, b):
result = a + b
return result
add_two_numbers(100, 42) # Aufruf der Funktion
a = 5
b = 9
if a > b :
print("a ist größer als b") # wird nicht ausgeführt
elif a < b :
print("a ist kleiner als b") # wird ausgeführt, da 5 < 9
else:
print("a und b sind genau gleich groß")
Operator | Bezeichnung |
---|---|
+ , - |
Addition, Subtraktion |
* , / , % |
Multiplikation, Subtraktion, Modulo (Rest) |
Operator | Bezeichnung |
---|---|
< , <= |
"Kleiner" und "Kleiner Gleich" |
> , >= |
"Größer" und "Größer Gleich" |
== |
Gleichheit |
!= |
Ungleichheit |
Operator | Bezeichnung |
---|---|
and |
Logisches "Und". Gibt True zurück, wenn beide Anweisungen True sind. |
or |
Logisches "Oder". Gibt True zurück, wenn eine der beiden Anweisungen True ist. |
from random import randint
untere_grenze = 5
obere_grenze = 10
randint(untere_grenze, obere_grenze)
import time
# Ausführung des Programms stoppt für X Sekunden
time.sleep(0.5) # Ausführung stoppt für 0,5 Sekunden