In deze Python lessen wordt gebruik gemaakt van Python 3!

Download deze van: 

https://www.python.org/downloads/

En installeer het programma op je computer. 

Vierkant tekenen

Open Python 3 op je bureaublad.

Het scherm wat je nu ziet heet de Python Shell.

In de Python Shell kun je opdrachten geven achter de prompt >>>. Kijk naar het voorbeeld hieronder en typ de volgende twee regels in:

import turtle

turtle.forward(100)

Je ziet nu dat er nog een venster geopend wordt. Dit is je tekenblaadje van Turtle Graphics. De lijn die je ziet is 100 pixels. We gaan nu proberen een vierkantje te maken. Hiervoor heb je deze opdracht regel nodig, je draait dan 90 graden linksom:

turtle.left(90)

Herhaal turtle.forward(100) en turtle.left(90) totdat je een vierkantje hebt zoals het voorbeeld hieronder.

Om je tekenblaadje weer leeg te maken typ je:

turtle.clear()


For loop

 

We gaan nu het programma om een vierkant te tekenen wat korter opschrijven. Dan lijkt het al meer op echt programmeren. We gebruiken daarvoor een for loop. Een loop is een herhaling of lus en is bedoeld voor het herhalen van stukjes code. We beginnen de loop met deze regel:

for i in range (4):

De i in deze regel is een variable. Je mag daarvoor ook een andere letter of zelf een woordje bedenken. in range (4) betekent dat de regels die onder de for loop staan, vier keer herhaald worden, van 0 t/m 3. Vergeet niet de dubbele punt aan het eind : Over de functie range() krijg je in de volgende les meer informatie.

Om te zien dat de herhaling van 0 t/m 3 gaat kun je even deze twee regels intypen:

for i in range (4):

  print (i)

Nu gaan we het programma schrijven voor het maken van een vierkant.

for i in range (4):

  turtle.forward(100)

  turtle.left(90)

Opslaan

We hebben de opdrachten tot nu toe in de Python Shell getypt. Je kunt ook een nieuw blaadje openen en daar je programma in schrijven en dit opslaan. Klik in het menu bovenin op File en dan op New File, je krijgt nu een leeg blaadje waar je het programma in kunt typen. Kijk naar het voorbeeld hieronder:

import turtle

for i in range (4):

    turtle.forward(100)

    turtle.left(90)

Om het programma op te slaan klik je op File en dan op Save en dan zie je allemaal mappen, dubbelklik op Documents en typ bij File name vierkant en klik op Save.

Druk nu op je toetsenbord op F5, het Turtle Graphics scherm opent nu en als het goed is komt er een vierkant.


Wiskunde

De hoek van een vierkant is altijd 90 graden. Maar waarom eigenlijk? Kunnen we het berekenen? Ja dat kan met de formule 360 / 4. Een circel is 360 graden en we gaan het verdelen in 4 hoeken. Een hoek is dan 90 graden. We kunnen ook een veelhoek programmeren. Willen we bijvoorbeeld een 6 hoekig figuur, dan moeten we 360 graden delen door 6 (360/6). We hoeven dit niet zelf uit te rekenen, dat kan Python ook. Ons Python programma wordt dan:

import turtle

for i in range (6):

    turtle.forward(100)

    turtle.left(360/6)

 

Opdracht: maak een achthoek

Nu je weet hoe je een 6 hoekig figuur maakt kun je ook een 8 hoekig figuur maken. Probeer het maar eens in Python.

Voorbeeld

Pimp je vierkant of veelhoek

We gaan nu het vierkant of je veelhoek wat mooier maken, met kleurtjes en dikke lijnen. We voegen daarvoor onderstaande 3 regels toe:

turtle.color("green")

turtle.pensize(5)

turtle.bgcolor("black")

Druk op F5 om je programma uit te voeren. Sla het wel eerst op. Probeer nog meer kleuren en veelhoek vormen. Kijk voor de kleuren namen op de afbeelding onderaan de pagina.

 

De functie: range()

Een range is een reeks opeenvolgende getallen. Als je een herhaling gaat gebruiken met bijvoorbeeld een for loop dan heb je ook de range() functie nodig. Er zijn veel mogelijkheden voor de range() functie. Hieronder een aantal voorbeelden:

range(5) geeft 0,1,2,3,4 ofwel 0 tot 5. Zoals je ziet begint Python bij 0 te tellen als je geen begin opgeeft. Met een for()loop en een print() functie kun je de getallen printen, zie het voorbeeld hieronder.

for i in range(5):

    print (i)

Je kunt ook een begin getal opgeven. Je geeft dan eerst het begin getal en daarna het getal waar Pyton onder moet blijven. range(1,11) geeft 1,2,3,4,5,6,7,8,9,10 ofwel 1 tot 11

Je kunt ook nog getallen overslaan door de stapgrootte op te geven. range(1,11,2) geeft 1,3,5,7,9 en telt dus met sprongen van 2

Je kunt ook de stapgrootte negatief maken waardoor je bijvoorbeeld kan beginnen met 10 en eindigen met 1.
range(10, 0,-1) geeft 10, 9,8,7,6,5,4,3,2,1

 

Opdracht 1

Maak een programma dat de getallen 2, 4, 6, 8 print. Gebruik de functies: for() en range() en print()

Voorbeeld opdracht 1

Opdracht 2

Maak een programma dat de getallen 10, 9, 8, 7, 6, 5, 4, 3, 2, 1 print. Gebruik de functies: for() en range() en print()

Voorbeeld opdracht 2

Python ster tekenen

Voordat je aan deze les begint moet je eerst de les vierkant tekenen gedaan hebben. In deze les gaan we verschillende sterren tekenen, we beginnen met een ster met 5 punten.

Open Python 3 en open een nieuw blaadje met File, New File.

Hieronder zie je de regels die je moet intypen.

import turtle

for i in range (5):

turtle.forward(200)

turtle.left(144)

De eerste regel import turtle is nodig als eerste regel omdat je daarmee aangeeft dat je de Turtle module in je programma gebruikt, er zijn heel veel modules, bijvoorbeeld de random module voor genereren van willekeurige getallen de tkinter module voor het maken van windows voor je programma.

De volgende regel for i in range (5): geeft aan dat de regels die eronder staan 5 keer herhaald moeten worden. De regel turtle.forward(200) laat de turtle 200 pixels naar voren gaan, de regel turtle.left(144) geeft aan dat de turtle 144 graden draait.

Sla het op in Documents en geef het een naam. Test het programma met F5.

Kun je nu zelf bedenken hoe je de lijn een kleurtje geeft? En de lijn dikker maken? En een achtergrondkleur? Je kunt ook nog even terug kijken in de les vierkant maken, onderdeel kleuren.




Ster met veel punten

Laten we nu een ster maken met veel punten. Typ onderstaad programma over en sla het op en test het met F5:

import turtle

for i in range (18):

    turtle.forward(200)

    turtle.left(100)

En probeer ook eens dit voorbeeld:

import turtle

for i in range (90):

    turtle.forward(200)

    turtle.left(92)

Kun je zelf ook een ster bedenken met heel veel punten? Probeer ook met kleurtjes te werken. In het onderstaande voorbeeld komt er de opdracht turtle.begin_fill()en turtle.end_fill()bij. Type het over en kijk wat er gebeurt:

import turtle

turtle.color("yellow")

turtle.bgcolor("black")

turtle.begin_fill()

for i in range (18):

    turtle.forward(200)

    turtle.left(100)

turtle.end_fill()

Verplaatsen op het papier

Tot nu toe begonnen we altijd te tekenen met de Turtle in het midden van het blaadje. We gaan nu de turtle verplaatsen zodat hij ergens anders op het papier kan beginnen. De turtle kan met turtle.up()van het papier af, en met turtle.down() op het papier gezet worden. met turtle.setposition(x, y) kun je de turtle naar een andere plek toe brengen. Je moet dan dus de x en y waarde van die plaats hebben. Probeer onderstaand voorbeeld maar eens uit. Je kunt het kopieren en plakken.

import turtle

turtle.color("blue")

turtle.begin_fill()

for i in range (5):

    turtle.forward(100)

    turtle.left(144)

turtle.end_fill()

 

turtle.up()

turtle.setposition(0, 100)

turtle.down()

 

turtle.color("red")

turtle.begin_fill()

for i in range (5):

    turtle.forward(100)

    turtle.left(144)

turtle.end_fill()

 

turtle.up()

turtle.setposition(-150, 50)

turtle.down()

 

turtle.color("green")

turtle.begin_fill()

for i in range (5):

    turtle.forward(100)

    turtle.left(144)

turtle.end_fill()

 

Kun je nog meer sterren op één tekenblaadje maken? Kopieer en plak de code voor één ster en plak het onderaan je programma. Pas turtle.setposition(x, y) aan met andere waarde voor x en y. Test je programma met F5