Rysujemy z żółwiem w Pythonie

Data publikacji: 2025-10-16

Zdjęcie lekcji

Temat: Rysujemy z żółwiem w Pythonie

Python Turtle, czyli grafika żółwia

Wstęp W Pythonie za pomocą modułu turtle możemy w łatwy sposób stworzyć rysunki i grafiki. Wydając wirtualnemu „żółwiowi” polecenia takie jak: idź naprzód, skręć w prawo lub wypełnij kolorem, możemy narysować na cyfrowej kartce nawet bardzo rozbudowane rysunki. Moduł turtle w prosty sposób można pisać aplikacje graficzne i mieć przy tej okazji, sporo radości. Włączając tworzenie ciekawych grafik, czy też bardzo prostych gier. Grafika możliwa jest poprzez wydawanie poleceń obiektowi (tzw. żółw), który znajduje się na ekranie. Może się on poruszać o określoną ilość punktów i obracać o podany kąt w prawo lub lewo. W Pythonie za grafikę odpowiada moduł turtle i należy go zaimportować za pomocą polecenia:

Ruch żółwia

SkrótPełna nazwaCo robi
fd(100)forward(100)Idź do przodu o 100 kroków
bk(50)backward(50)Idź do tyłu o 50 kroków
lt(90)left(90)Skręć w lewo o 90°
rt(90)right(90)Skręć w prawo o 90°
goto(x, y)goto(x, y)Przenieś żółwia w dane współrzędne

Pióro (rysowanie)

SkrótPełna nazwaCo robi
pu()penup()Podnieś pióro – żółw nie rysuje
pd()pendown()Opuść pióro – żółw rysuje
pensize(5)pensize(5)Grubość linii
color("red")color(...)Zmien kolor pióra

Inne przydatne

SkrótPełna nazwaCo robi
speed(5)speed(5)Prędkość rysowania (1-10)
begin_fill()begin_fill()Rozpocznij wypełnianie kolorem
end_fill()end_fill()Zakończ wypełnianie kolorem
done()done()Zatrzymuje okno żółwia
Podstawowy kod startowy:
from turtle import *
shape("turtle")  # zmiana kursora na żółwia
speed(2) # zmiana prędkości żółwia  

Ćwiczenie 1:

Narysujmy prostą kreskę
from turtle import *

fd(100)  # żółw idzie 100 kroków do przodu
Wyjaśnienie: fd(100) — oznacza idź do przodu 100 pikseli.

Ćwiczenie 2

Narysuj literę "L".
Pokaż rozwiązanie
from turtle import *

shape("turtle")
speed(1)
pensize(5)

rt(90), fd(100), lt(90), fd(60)

Ćwiczenie 3

Narysuj literę "T"
Pokaż rozwiązanie
from turtle import *

shape("turtle")
speed(1)
pensize(5)

fd(100), fd(-50), rt(90), fd(120)

Ćwiczenie 4

Narysuj trzy kreski o różnej długości.
Pokaż rozwiązanie

from turtle import *

shape("turtle")
speed(1)

pensize(10),
fd(100)
pu()

fd(20), pd()
pensize(5), fd(100)
pu(), fd(20), pd()

pensize(1), fd(100)
                          

Ćwiczenie 5

Narysuj następującą figurę:
Pokaż rozwiązanie

from turtle import *

shape("turtle")
speed(2)
pensize(3)

fd(50), lt(90), fd(50), lt(90)
fd(50), lt(90), fd(50), lt(90)

fd(100), lt(90), fd(100), lt(90)
fd(100), lt(90), fd(100), lt(90)

fd(150), lt(90), fd(150), lt(90)
fd(150), lt(90), fd(150), lt(90)
                          

Ćwiczenie 6

Narysuj następującą figurę:
Pokaż rozwiązanie

from turtle import *

shape("turtle")
speed(2)
pensize(2)

fd(70), lt(120), fd(70), lt(120), fd(70), lt(120)

fd(130), lt(120), fd(130), lt(120), fd(130), lt(120)

fd(190), lt(120), fd(190), lt(120), fd(190), lt(120)
                        

Ćwiczenie 6

Narysuj następującą figurę:
Pokaż rozwiązanie

from turtle import *

shape("turtle")
speed(2)
pensize(2)

fd(70), lt(120), fd(70), lt(120), fd(70), lt(120), fd(70),

fd(70), lt(120), fd(70), lt(120), fd(70), lt(120), fd(70),

fd(70), lt(120), fd(70), lt(120), fd(70), lt(120), fd(70),

fd(70), lt(120), fd(70), lt(120), fd(70), lt(120), fd(70),

fd(70), lt(120), fd(70), lt(120), fd(70), lt(120), fd(70)