Een schildpad wordt in het Engels ook wel een turtle genoemd.
Een schildpad is een traag diertje. In Python heb je ook iets wat daarmee overeen komt: een tutle. Een turtle in Python is een klein zwart driehoekje dat traag over het scherm beweegt.
Als dit driehoekje over het scherm beweegt laat het ook een spoort achter, dan gelijkt het meer op een slang. De turtle is een leuke manier om te leren hoe tekeningen tot stand komen op de computer.

Laat ons met de Python turtle een paar simpele vormen en lijnen maken.
Om dat te doen moeten we uiteraard eerst Python IDLE opstarten. Weet je nog hoe je dat moet doen?

Juist, vanuit de start knop links onderaan:
Klik op start, programma's, Python 3.3 en klik op IDLE (Python GUI)

De Python shell komt tevoorschijn:

Het eerste wat we moeten doen is de turtle module laden.
Later zullen we meer leren over wat een module is. Een module bevat stukken code met functies die we kunnen gebruiken om zo sneller een programma te maken.

We laten de module turtle als volgt:

>>> import turtle

Laat ons nu eens die schildpad op het scherm toveren:

>>> t = turtle.Pen()

Als het goed werd uitgevoerd verschijnt er nu een extra window met een driehoekje, onze schildpad:

Het driehoekje is een pen die we koppel aan een variable t. In mijn vorige reeks, Les 4, leg ik uit wat variables zijn. De variable t kunnen we nu gebruiken om daar iets mee te doen.

Tik nu eens het volgende in:

>>> t.forward(50)

Heb je de schildpad zien bewegen? Forward wil ook zeggen "ga vooruit". Onze pen heeft 50 stapjes gezet.

We gaan nog een paar opdrachten uitvoeren:

>>> t.left(90)
>>> t.forward(50)
>>> t.left(90)
>>> t.forward(50)

Dit zou het resultaat moeten zijn:

Wat is hier nu gebeurd? Met left(90) zeggen we: draai 90 graden naar links. Met right kunnen we ook naar rechts draaien.

Gelukkig hebben we ook een gommetje als we opnieuw willen beginnen:

>>> t.reset()

Laat ons eens iets mooier op het scherm tekenen.
maak een programmatje met deze code:

import turtle
t = turtle.Pen()
t.reset()
for x in range(1, 9):
    t.forward(100)
    t.left(225)

Als je de vorige lesjes hebt bekeken zou je moeten weten wat er op het scherm komt.
Zullen we toch eens van nabij bekijken wat er gebeurd?
De eerste 3 lijntjes code zouden duidelijk moeten zijn. Maar wat gebeurd hier:

for x in range(1, 9):
    t.forward(100)
    t.left(225)

Een for lus van 1 tot 9. In de lus worden 2 commando's uitgevoerd: er wordt een lijntje getrokken van 100 punten en daarna wordt een draai gemaakt van 225 graden. En die 2 commando's worden elk 8 keer uitgevoerd.

Met dit als resultaat:

Je kunt ook op je stappen terug keren met de backward functie:

>>> t.reset()
>>> t.forward(100)
>>> t.backward(100)

Het is ook mogelijk om de pen even van het scherm te halen met de up functie en die terug op het scherm te plaatsen met de down functie:

>>> t.reset()
>>> t.forward(50)
>>> t.up()
>>> t.forward(50)
>>> t.down()
>>> t.forward(50)

Heb je een idee hoe dit figuurtje werd gemaakt:

Twee cirkels. Het engels woord voor cirkel = circle. De oplossing is niet zo moeilijk: we tekenen een cirkel, draaien het pijltje 180 graden en tekenen nog een cirkel:

>>> t.reset()
>>> t.circle(50)
>>> t.left(180)
>>> t.circle(50)

 

 

Enkele oefeningen:

  1. Kun je een programma schrijven dat een vierkant tekent? Teken eerst het vierkant zonder for lus en daarna met for lus.
  2. Kun je ook een vierkant teken door gebruik te maken van een while lus?
  3. Zou je ook een 6-hoek kunnen tekenen?
  4. Zou je deze figuur kunnen maken:

Wat hebben we geleerd?

  • Een schildpad in Python is toch iets raar.
  • Een schildpad in Python is toch snel.
  • In Python kun je ook figuren tekenen.