Szybki walentynkowy wpis, dla tych co dzisiaj mają chwilę, aby pokodzić i mają ochotę poznać żółwia.
Czym jest Żółw / Python Turtle?
Turtle
to biblioteka Pythona, która jest już dołączona do standardowych bibliotek, które są dostępne dla nas zaraz po zainstalowaniu Pythona 3. Pozwala na rysowanie kształtów, tworzenie prostych obrazków czy gier, dzięki czemu jest często wykorzystywana do nauki programowania dla dzieci.
Obsługa grafiki oparta jest na module Tkinter
code> (python-tk
musi być zainstalowany przy instalacji Pythona td/tk checkbox lub można doinstalować później pip install tk
).
Wskaźnik poruszający się i rysujący po ekranie nazywamy żółwiem.
Żółw ma 3 atrybuty
– miejsce (lokalizację),
– orientację (kierunek ruchu)
– oraz żółwia(Turtle)/pióro(Pen), ja dla wygody nazywam go wskaźnikiem czy strzałką.
Żółw może poruszać się w 4 kierunkach: prawo, lewo, prosto i do tyłu i takie również mamy metody: right()
, left
, forward()
, backward()
.
Spójrzmy na poniższy kod. Zaczynamy oczywiście o importu biblioteki i wywołujemy kolejne funkcje.
turtle.forward(100)
turtle.right(90)
turtle.forward(100)
turtle.left(90)
turtle.forward(100)
turtle.backward(50)
turtle.done()
- Funkcje
forward()
ibackward()
przyjmują odległość do przebycia jako wartość liczbową. - Funkcje
right()
ileft()
przyjmują również wartość liczbową, ale jest to kąt o jaki ma się obrócić żółw/piórko.
turtle.circle(100)
turtle.done()
circle()
– pozwala narysować kształt koła, wartość w nawiasie to promień koła.
Przetestujcie również:
turtle.circle(100, 180)
,
turtle.circle(100, 120)
– pierwsza wartość to promień, druga kąt/wycinek koła jaki chcemy narysować.
Tylko tyle informacji potrzebujemy by narysować serce w Pythonie.
Serce za pomocą modułu turtle
Dzisiaj narysujemy serce za pomocą żółwia.
Nie chcę za każdym razem pisać turtle.nazwa_metody()
, dlatego inaczej zaimportuję bibliotekę:
from turtle import *
.
Zacznijmy od następującego kodu:
left(40)
forward(60)
circle(30, 200)
left(240)
circle(30, 200)
forward(60)
done()
Może pokolorujemy serce?
color(„red”, „pink”)
begin_fill()
left(40)
forward(60)
circle(30, 200)
left(240)
circle(30, 200)
forward(60)
end_fill()
done()
Pogrubmy linie (pensize()
), plus schowajmy żółwio-wskaźnik (hideturtle()
).
pensize(3)
color(„red”, „pink”)
begin_fill()
left(40)
forward(60)
circle(30, 200)
left(240)
circle(30, 200)
forward(60)
end_fill()
hideturtle()
done()
Dla zainteresowanych:
Żółw (tak samo jak ogólnie Python) pozwala nam wykorzystanie programowania proceduralnego, jak i obiektowego.
Porównaj:
turtle.forward(100)
turtle.done()
Wszystkie metody z klas biblioteki Turtle są dla nas dostępne jako funkcje i automatycznie wywoływane. Tak samo autmatycznie powstaje domyślny obiekt żółwia. Możemy go jednak utworzyć jawnie:
t = turtle.Turtle()
t.forward(100)
turtle.done()
Turtle()
– tworzy i zwraca nam nowy obiekt żółwia.
Dodatkowo możemy zmienić kształt żółwia na … żółwia instrukcją shape("turtle")
(inne kształty to np. circle, square, arrow )
t = turtle.Turtle()
t.shape(’turtle’)
t.forward(100)
turtle.done()
Hej, też sie uczę „serduszko” mi wyszło 🙂
Jak cytujesz kody na stronie to apostrofy Ci apka formatuje na „literacki” i nie da się kodów skopiowac,
Jak to guttenberg to jest prosty plugin w WP do tego: Highlighting Code Block