Je hebt net gezien hoe je met een for-lus code kunt herhalen, en dat je de variabele ook in de lus kan gebruiken. Je kan dit hieronder nog eens lezen.


Uitleg die je bij de vorige oefening hebt gezien

Welk probleem heb je bij de vorige oefening opgemerkt?

Je hebt net een oefening gedaan waarbij je 10 keer dezelfde tekst op het scherm moest laten verschijnen. Dit heb je gedaan met de print-functie. Maar wat als je diezelfde tekst 100 keer of zelfs 1000 keer op het scherm wilt laten verschijnen? Zou je dan echt 100 of 1000 keer dezelfde regel code moeten schrijven? Dat zou heel veel werk zijn en bovendien zou het je code onoverzichtelijk maken. Gelukkig is er een eenvoudigere manier om dit te doen, namelijk door code te herhalen met een lus (loop).


Wat is een lus?

Een lus is een programmeerconstructie waarmee je een stuk code meerdere keren kunt herhalen zonder dat je die code telkens opnieuw hoeft te schrijven. In Python zijn er twee soorten lussen:

  • de for-lus
  • de while-lus.

We zullen eerst de for-lus bekijken.


De for-lus

Een for-lus heeft de volgende structuur:

for variabele in range(aantal_herhalingen):
    # code die herhaald moet worden

Wat betekent elk onderdeel in die eerste regel?

  • for: Dit is het sleutelwoord dat aangeeft dat we een lus gaan starten.
  • variabele: Dit is een tijdelijke naam die we geven aan het huidige herhalingsnummer. Je kunt deze naam zelf kiezen, maar vaak wordt i gebruikt.
  • in range(aantal_herhalingen): Dit deel geeft aan hoeveel keer de lus moet worden herhaald. De functie genereert een reeks getallen van 0 tot aantal_herhalingen (dus niet tot en met).



Laten we eens een echt voorbeeld bekijken:

for i in range(5):
    print("Hallo wereld!")

Wat gebeurt hier?

  • genereert de getallen 0, 1, 2, 3, en 4.
  • In het begin krijgt i de waarde 0.
  • De code binnen de lus, , wordt uitgevoerd, waardoor Hallo wereld! op het scherm verschijnt.
  • Daarna krijgt i de volgende waarde, namelijk 1.
  • De code binnen de lus, , wordt uitgevoerd, waardoor Hallo wereld! op het scherm verschijnt. (voor de tweede keer dus)
  • ...
  • Als laatste krijgt i de waarde 4.
  • De code binnen de lus, , wordt uitgevoerd, waardoor Hallo wereld! op het scherm verschijnt. (voor de vijfde keer dus)
  • Nu zijn er geen getallen meer in de reeks die door is gegenereerd, dus stopt de lus.

Op het scherm zie je dus verschijnen:

Hallo wereld!
Hallo wereld!
Hallo wereld!
Hallo wereld!
Hallo wereld!


De variabele in de for-lus gebruiken

We zien echter dat er ook een variabele is in de for-lus, namelijk i. We hebben deze variabele nog niet echt gebruikt. Soms kan het echter wel handig zijn om te weten in welke herhaling we ons bevinden. Stel dat we willen printen welk nummer van de herhaling we aan het uitvoeren zijn. We kunnen dit doen door de variabele i te gebruiken binnen de lus. Hier is een voorbeeld:

for i in range(5):
    print(f"Dit is herhaling nummer {i}")

Op het scherm zie je:

Dit is herhaling nummer 0
Dit is herhaling nummer 1
Dit is herhaling nummer 2
Dit is herhaling nummer 3
Dit is herhaling nummer 4


Je kan echter nog veel meer berekeningen doen met de variabele in de lus. We kunnen er bijvoorbeeld voor zorgen dat we niet vanaf 0 tellen, maar vanaf 1, zoals in dit voorbeeld:

for i in range(5):
    echte_herhalingsnummer = i + 1
    print(f"Dit is herhaling nummer {echte_herhalingsnummer}")

Wat gebeurt hier?

Je ziet dus op het scherm:

Dit is herhaling nummer 1
Dit is herhaling nummer 2
Dit is herhaling nummer 3
Dit is herhaling nummer 4
Dit is herhaling nummer 5



Opdracht

Vervang de underscores in deze code:

for i in range(5):
    y = ____
    print(f"{i} in het kwadraat is {y}")

zodat het volgende op het scherm verschijnt:

0 in het kwadraat is 0
1 in het kwadraat is 1
2 in het kwadraat is 4
3 in het kwadraat is 9
4 in het kwadraat is 16

(Vervang enkel de underscores, laat de rest van de code zoals het is.)