Rozdział 6 · Rysujemy fajne rzeczy za pomocą Turtle
Przechodzimy do losowych punktów na ekranie
goto() przesuwa żółwia bezpośrednio na ekran — wraz z losowymi liczbami daje ciekawy efekt.
Do tej pory żółw poruszał się tylko względem swojej aktualnej pozycji lub po wcześniej
znanych współrzędnych. Ale można od razu „przeteleportować” go do konkretnego punktu ekranu poleceniem
goto(x, y) — a razem z losowymi liczbami z rozdziału 5 to otwiera interesujące możliwości.
Losowe punkty na ekranie
sluchaynye_tochki.py
import turtle
import random
random.seed(7)
screen = turtle.Screen()
screen.setup(width=420, height=340)
artist = turtle.Turtle()
artist.hideturtle()
artist.penup()
for _ in range(10):
x = random.randint(-200, 200)
y = random.randint(-150, 150)
artist.goto(x, y)
artist.dot(14, "#5B24F9")
screen.exitonclick()
Rezultat
sluchaynye_tochki_kod.py
import turtle
import random
random.seed(7) # poprawka seed — zdjęcie będzie takie samo przy każdej premierze
screen = turtle.Screen()
artist = turtle.Turtle()
artist.penup()
for _ in range(10):
x = random.randint(-200, 200)
y = random.randint(-150, 150)
artist.goto(x, y)
artist.dot(14, "#5B24F9")
penup() przed goto()
Bez
penup() żółw za każdym razem, gdy się porusza, rysuje linię goto() — co zwykle nie jest tym, czego potrzeba do „skoku”Dlaczego random.seed(7) tutaj
Rozbieraliśmy
random.seed() w rozdziale 5 — tutaj jest potrzebny dokładnie po to, by KAŻDY przebieg tego kodu dawał ten sam obraz, a nie nowy za każdym razem. Usuń linię z seed a kropki stają się naprawdę losowe przy każdym przebiegu.Praktyka: goto(), penup()/pendown() i random
Moduł turtle otwiera natywne okno Python – uruchamiane lokalnie w VS Code, PyCharm lub Jupyter
Praktyka kursuje lokalnie