pythonzomerschool

Week 1 · Les 4 · Python-basis

Herhalen — for & while

Computers zijn heel goed in saai werk: iets duizend keer doen zonder te klagen. In deze les laat je Python herhalen — zonder duizend regels code te typen.

§1Waarom je een lus wilt

Stel: je wilt 100 keer "Hoi!" printen. Zonder lus zou je 100 regels moeten typen:

print("Hoi!") print("Hoi!") # … en zo nog 98 keer 😴

Met een lus (Engels: loop) schrijf je de regel één keer op en zeg je erbij hoe vaak hij moet draaien. Korter, en veel makkelijker aan te passen.

§2for met range(): een vast aantal keer

Weet je precies hoe vaak iets moet gebeuren, dan gebruik je for samen met range(). De teller i krijgt om de beurt elke waarde uit de reeks:

for i in range(5): print(i)
0 1 2 3 4

Let op iets wat verwarrend is in het begin: range(5) telt vanaf 0 en stopt vóór de 5. Je krijgt dus 0, 1, 2, 3, 4 — dat zijn vijf getallen, maar de 5 zelf zit er níét bij.

🔮 Voorspel de uitvoer

Nu jij — ander getal, zelfde regels. Wat is het laatste getal dat dit programma print?

for i in range(10): print(i)
9

Niet 10! range(10) begint bij 0 en stopt vóór de 10, dus het laatste getal is 9. Het aantal rondjes klopt wél: het zijn er precies tien (0 t/m 9).

§3for over tekst: letter voor letter

Een for-lus kan ook door een stuk tekst lopen. Dan pakt hij elke letter op zijn beurt:

for letter in "hoi": print(letter)
h o i

Handig om te onthouden: een lus loopt niet alleen over getallen, maar over allerlei reeksen — en tekst is voor Python gewoon een reeks losse letters.

§4while: zolang iets waar is

Soms weet je niet vooraf hoe vaak iets moet, alleen wannéér het moet stoppen. Dan gebruik je while: die blijft draaien zolang een voorwaarde True is (denk terug aan les 3). Je hebt bijna altijd een tellervariabele nodig die je elke ronde ophoogt:

teller = 1 while teller <= 3: print(teller) teller = teller + 1
1 2 3

Die laatste regel, teller = teller + 1, is levensbelangrijk. Hij zorgt dat de teller elke ronde groeit, zodat de voorwaarde ooit False wordt en de lus stopt.

⚠️ De oneindige lus

Vergeet je teller = teller + 1, dan blijft teller voor altijd 1. De voorwaarde teller <= 3 is dan altijd waar en je lus stopt nooit meer. Je programma loopt vast. Kom je vast te zitten? Meestal stop je een programma met Ctrl + C.

§5Welke kies je? Een simpele vuistregel

De vraag die je jezelf stelt: weet ik vooraf hoe vaak?

for

Gebruik je als je het aantal vooraf weet: "doe dit 10 keer", "loop door deze tekst". Vaak met range().

while

Gebruik je als je het aantal niet weet, maar wél de stopvoorwaarde: "blijf vragen tot het antwoord klopt".

🧠 Test jezelf

Vier korte vragen. Je krijgt meteen te zien of je het goed hebt — fout is niet erg, daar leer je van!