For Loops

For-loops zijn een krachtig hulpmiddel waarmee je herhaaldelijk een stuk code kunt uitvoeren. Dit is vooral handig wanneer je te maken hebt met herhalende taken.

Wat is een Loop?

Een loop is een structuur die je toelaat om een stuk code meerdere keren uit te voeren. In Python zijn er verschillende soorten loops, maar we beginnen met de for-loop, die het eenvoudigst te begrijpen is.

De For Loop

Een for-loop herhaalt een stuk code voor elk element in een verzameling zoals een reeks getallen. Hier is de algemene structuur van een for-loop:

for variabele in verzameling:
    # Doe iets met variabele

Laten we eens kijken naar een paar voorbeelden om dit beter te begrijpen.

Voorbeeld 1: Eenvoudige For Loop

Laten we beginnen met een eenvoudige for-loop die de getallen van 1 tot en met 5 afdrukt:

for i in range(1, 6):
    print(i)

In dit voorbeeld:

  • range(1, 6) genereert een reeks getallen van 1 tot en met 5. Onthoudt dat de bovengrens van een range exlusief is. Dat wil zeggen dat die waarde niet inbegrepen is. Het getal 6 is waar de loop stopt. De print instructie wordt niet meer uitgevoerd met dit getal.
  • i is de variabele die elke waarde in de reeks één voor één aanneemt.
  • print(i) drukt de huidige waarde van i af.

Het Belang van Inspringen (Indents)

In Python is inspringen (indents) erg belangrijk. Het bepaalt welke code bij de for-loop hoort. Alle regels die ingesprongen zijn, worden herhaald voor elke waarde in de verzameling. Laten we dit demonstreren met een voorbeeld.

Voorbeeld 2: Meerdere Regels in een For Loop

for i in range(1, 4):
    print("Dit is regel 1 binnen de loop, i is:", i)
    print("Dit is regel 2 binnen de loop, i is:", i)
print("Dit is buiten de loop")

In dit voorbeeld:

  • De eerste twee print-instructies zijn ingesprongen en horen bij de for-loop.
  • De laatste print-instructie is niet ingesprongen en wordt slechts één keer uitgevoerd nadat de loop is voltooid.

Wanneer je deze code uitvoert, zie je het volgende resultaat:

Dit is regel 1 binnen de loop, i is: 1
Dit is regel 2 binnen de loop, i is: 1
Dit is regel 1 binnen de loop, i is: 2
Dit is regel 2 binnen de loop, i is: 2
Dit is regel 1 binnen de loop, i is: 3
Dit is regel 2 binnen de loop, i is: 3
Dit is buiten de loop

Test dit even uit. Wat gebeurt er wanneer je de derde regel niet inspringt?

for i in range(1, 4):
    print("Dit is regel 1 binnen de loop, i is:", i)
print("Dit is regel 2 binnen de loop, i is:", i)
print("Dit is buiten de loop")

Belangrijk om te onthouden is dat je geen foutmelding krijgt! Als je niet goed oplet bij het schrijven van je loop kunnen er snel fouten in je programma sluipen.

Voorbeeld 3: Berekeningen binnen een For Loop

Je kunt ook berekeningen uitvoeren binnen een for-loop. Hier is een voorbeeld waarin we de kwadraten van de getallen van 1 tot en met 5 berekenen:

for i in range(1, 6):
    kwadraat = i * i
    print("Het kwadraat van", i, "is", kwadraat)

In dit voorbeeld:

  • De variabele kwadraat wordt binnen de loop berekend en heeft een nieuwe waarde voor elke iteratie.
  • De print-instructie drukt het resultaat van de berekening af voor elke waarde van i.

Voorbeeld 4: Strings

Teksten noemen we in python strings. Een tekst bestaat uit een reeks van tekens. Je kan een loop dus ook gebruiken om één voor één alle tekens in een string af te lopen.

for letter in "Hello!":
    print(letter + letter)

Volg de les Loops op Brilliant.org

Maak de oefening Practice Loops op Brilliant.org

Oefeningen

Probeer nu zelf enkele oefeningen om te oefenen met for-loops. Vergeet niet om de inspringing correct te gebruiken!

Oefening 1: Druk de getallen van 1 tot en met 10 af.

Oefening 2: Druk elke letter van de string “Python” af.

Oefening 3: Bereken en druk de som van de getallen van 1 tot en met 5 af.

Oefening 4: Druk de tafel van 3 af (3, 6, 9, … tot en met 30).

Start de challenge Fibonacci Challenge op Brilliant.org

Numpy

In dit hoofdstuk leer je over NumPy, een krachtige library in Python die veel gebruikt wordt voor wetenschappelijke berekeningen en data-analyse. We gaan ook verder met het oefenen van loops door reeksen te genereren met NumPy.

Wat is een library?

Een library is een verzameling van voorgeprogrammeerde functies en code die je in je eigen programma’s kunt gebruiken. Libraries helpen je om tijd te besparen en maken het makkelijker om complexe taken uit te voeren zonder dat je alles zelf hoeft te programmeren.

Wat is NumPy?

NumPy is een populaire Python-library die veel functies biedt voor het werken met arrays (reeksen van getallen) en het uitvoeren van wiskundige bewerkingen. Het is vooral handig voor wetenschappelijke en numerieke berekeningen.

Numpy is nog niet geinstalleerd op je computer, maar dat is eenvoudig te verhelpen. Open een terminal en typ:

pip install numpy

pip is de “Python Installer Package”. Met dat programma kan je eenvoudig libraries toevoegen aan je python configuratie. Je hebt wel een werkende internet verbinding nodig.

Je moet er wel mee opletten: sommige libraries steunen op specifieke versies van andere libraries. Daarom werk je beter met een virtuele omgeving. Maar voor deze eerste oefening en de libraries die je in dit hoofdstuk nodig hebt, kan het geen kwaad.

Waarom Importeren?

Om de functies en mogelijkheden van een library te gebruiken, moet je deze eerst importeren in je programma. Dit doe je met het import statement. Hierdoor kun je de functies van de library gebruiken alsof ze onderdeel zijn van je eigen code.

Importeren van NumPy

Voordat we NumPy kunnen gebruiken, moeten we het importeren. Dit doen we meestal met de naam np voor gemak:

import numpy as np

Voorbeelden

Een van de handige functies van NumPy is het gemakkelijk genereren van reeksen getallen. We zullen een paar voorbeelden bekijken.

Een Reeks van Getallen

Met NumPy kun je eenvoudig een reeks van getallen genereren met de arange functie:

import numpy as np

# Genereer een reeks van 0 tot 9
reeks = np.arange(10)
print(reeks)

In dit voorbeeld:

  • np.arange(10) genereert een reeks getallen van 0 tot en met 9.
  • print(reeks) drukt de gegenereerde reeks af.

Reeksen met een Stapgrootte

Je kunt ook een reeks genereren met een specifieke stapgrootte:

import numpy as np

# Genereer een reeks van 0 tot 9 met een stapgrootte van 2
reeks = np.arange(0, 10, 2)
print(reeks)

In dit voorbeeld:

  • np.arange(0, 10, 2) genereert een reeks getallen van 0 tot en met 9, met een stapgrootte van 2.
  • print(reeks) drukt de gegenereerde reeks af.

For Loops met NumPy Reeksen

Laten we een for-loop gebruiken om door een NumPy-reeks te itereren en elk element af te drukken:

import numpy as np

# Genereer een reeks van 1 tot 5
reeks = np.arange(1, 6)

# Gebruik een for-loop om elk element af te drukken
for i in reeks:
    print(i)

In dit voorbeeld:

  • reeks = np.arange(1, 6) genereert een reeks getallen van 1 tot en met 5.
  • De for-loop gaat door elk element in de reeks en drukt het af.

Oefeningen

Probeer nu zelf enkele oefeningen om te oefenen met NumPy en for-loops.

Oefening 1: Genereer een reeks van 0 tot en met 20 en druk elk element af.

Oefening 2: Genereer een reeks van 5 tot en met 50 met een stapgrootte van 5 en druk elk element af.

Oefening 3: Genereer een reeks van 10 getallen beginnend bij 1 en bereken de som van al deze getallen.

Start de challenge Fibonaci Challenge op Brilliant.org

Meet the turtle.

Start de les Drawing in python op Brilliant.org

Start de les Built-in functions op Brilliant.org

Start de les The for loop op Brilliant.org

Je kan turtle ook in je eigen python scripts gebruiken. Je hebt dan een klein probleem: zodra je tekening klaar is, stopt het programma en zie je de tekening niet meer.

Om dat te verhelpen schrijf je een extra instructie op het eind van je programma:

exitonclick()

Previous section:
Next section:
Navigatie