Rozdział 19 · Projekt: „Wąż”
Rysuj głowę
Głowa i jabłko to powszechne przedmioty Turtle o różnych kształtach i kolorach.
Rysuj głowę
Snake Head to powszechny przedmiot turtle.Turtle(), znajomy
Od rozdziału 6, tylko z kwadratowym kształtem i bez narysowanych linii (pióro uniesione):
golova.py
golova = turtle.Turtle()
golova.speed(0)
golova.shape("square")
golova.color("white")
golova.penup()
golova.goto(0, 0)
Dobierz pierwsze jabłko
Jabłko to także żółw, tylko okrągły i czerwony, i pojawia się w losowym miejscu na polu,
wyrównane do siatki schodkowej (random.randrange() z krokiem
RAZMER_SHAGA, aby jabłko zawsze znajdowało się „w kratce”):
yabloko.py
yabloko = turtle.Turtle()
yabloko.speed(0)
yabloko.shape("circle")
yabloko.color("red")
yabloko.penup()
def novoe_yabloko():
x = random.randrange(-GRANICA, GRANICA + RAZMER_SHAGA, RAZMER_SHAGA)
y = random.randrange(-GRANICA, GRANICA + RAZMER_SHAGA, RAZMER_SHAGA)
yabloko.goto(x, y)
novoe_yabloko()
Dlaczego GRANICA + RAZMER_SHAGA, a nie tylko GRANICA
U
randrange() prawej granicy jest wykluczony — randrange(-280, 280, 20) daje wartości tylko do 260 włącznie. Jednocześnie wąż łatwo osiąga 280 (sekcja 19.19), więc bez + RAZMER_SHAGA najbardziej zewnętrzny rząd komórek po prawej i górze byłby nieosiągalny dla jabłka, pole byłoby niezauważalnie asymetryczne.
Praktyka: Head and Apple
Moduł turtle otwiera natywne okno Python – uruchamiane lokalnie w VS Code, PyCharm lub Jupyter
Praktyka kursuje lokalnie