Rozdział 6 · Rysujemy fajne rzeczy za pomocą Turtle
Losowy ruch
Mały krok i losowy zakręt, powtarzany wiele razy, i otrzymujesz krętą, niepowtarzalną trajektorię.
Łącząc mały krok do przodu z losowym obrotem w każdej iteracji, można uzyskać niepowtarzalna, organicznie wyglądająca trajektoria — technika zwana "losową" wędrując" (random walk).
Pomysł — najpierw bez kodu
Wyobraź sobie: zrób mały krok, lekko skręć w losowym kierunku, krok jeszcze raz, jeszcze raz Przypadkowy zwrot akcji – i to tyle razy z rzędu. Brak planu, tylko powtarzanie tego samego Małe rozwiązanie.
sluchaynoe_dvizhenie.py
import turtle
import random
random.seed(3)
screen = turtle.Screen()
screen.setup(width=420, height=420)
artist = turtle.Turtle()
artist.pensize(2)
artist.pencolor("#5B24F9")
artist.speed(0)
for _ in range(40):
artist.forward(15)
artist.right(random.randint(-60, 60))
screen.exitonclick()
Rezultat
wyprzedzanie faktów
Poniższy kod wykorzystuje pętlę
for — omówimy go szczegółowo później. Na razie nie trzeba rozumieć całej składni pętli: ważny jest sam pomysł — mały krok i przypadkowy obrót, powtarzane wiele razy.sluchaynoe_dvizhenie_kod.py
import turtle
import random
random.seed(3) # ustalić seed odtwarzanego obrazu
screen = turtle.Screen()
artist = turtle.Turtle()
artist.pensize(2)
artist.pencolor("#5B24F9")
artist.speed(0)
for _ in range(40):
artist.forward(15)
artist.right(random.randint(-60, 60))
Spróbuj się zmienić
Usuń
random.seed(3) - Ścieżka będzie nowa za każdym razem, gdy ją przebijesz. Zmień zasięg randint(-60, 60) na przykład węższą (-15, 15) ścieżka stanie się bardziej bezpośrednia i przewidywalna.Praktyka: Ruch losowy
Moduł turtle otwiera natywne okno Python – uruchamiane lokalnie w VS Code, PyCharm lub Jupyter