Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Programma’s voeren stappen uit in een bepaalde volgorde. Met controle-structuren stuur je die volgorde: je voert code conditioneel uit, herhaalt ze, of slaat ze over. In deze notebook leer je ook comprehensions en lambda-functies — twee compacte schrijfwijzen die je voortdurend tegenkomt in ML code.

Condities: if / elif / else

Met een if-statement voer je een blok code alleen uit als een conditie True is.

Passed
passed

Lussen

for-lus

Een for-lus itereert over een reeks: een lijst, string, dictionary, range(), enz.

apple
banana
cherry
0 2 4 6 8 
1. apple
2. banana
3. cherry
Alice: 88
Bob: 74
Charlie: 95

while-lus

Een while-lus blijft herhalen zolang een conditie True is. Gebruik dit wanneer je het aantal iteraties op voorhand niet kent.

1
2
3
4
5

break en continue

  • break: beëindigt de lus onmiddellijk

  • continue: slaat de rest van de huidige iteratie over en gaat naar de volgende

First even number > 10: 12
2 4 6 8 10 

Comprehensions

Comprehensions zijn een compacte en leesbare manier om lijsten, dictionaries of sets te bouwen op basis van een reeks. Ze vervangen een for-lus + append()-patroon door één expressie.

[expression for element in sequence if condition]
[1, 4, 9, 16, 25, 36, 49]
['SCIENCE', 'PYTHON', 'NOTEBOOK']
{'Alice': 88, 'Bob': 74, 'Charlie': 95}
{'useful', 'and', 'is', 'fun', 'programming'}

Lambda-functies

Een lambda is een anonieme functie die in één expressie geschreven wordt. Gebruik ze voor eenvoudige, éénmalige transformaties — typisch als argument voor sorted(), map() of .apply() in Pandas.

lambda arguments: expression
10
Charlie: 95
Alice: 88
Diana: 81
Bob: 74
[0.85, 0.92, 0.71, 0.68, 0.95]

Oefeningen

Oefening 1 — Schrijf een for-lus die de getallen 1 t/m 30 doorloopt en voor elk getal afdrukt:

  • "Fizz" als het deelbaar is door 3

  • "Buzz" als het deelbaar is door 5

  • "FizzBuzz" als het deelbaar is door zowel 3 als 5

  • anders het getal zelf

Oefening 2 — Gegeven temperatures = [22.1, 18.5, -3.2, 0.0, 35.7, -10.1, 28.4]. Maak met een list comprehension twee lijsten: positive (temperaturen > 0) en negative (temperaturen ≤ 0).

Oefening 3 — Gegeven names = ["alice smith", "bob jones", "charlie brown"]. Maak met een list comprehension een nieuwe lijst waarbij elk naam omgezet is naar Title Case (eerste letter van elk woord groot). Gebruik de string-methode .title().

Oefening 4 — Gebruik een dictionary comprehension en zip() om een dictionary te bouwen van de twee lijsten countries = ["Belgium", "Netherlands", "France"] en codes = ["BE", "NL", "FR"], waarbij de landnamen de waarden zijn en de codes de sleutels.

Oefening 5 — Sorteer de lijst products = [("laptop", 999), ("mouse", 25), ("monitor", 349), ("keyboard", 89)] op prijs (tweede element) van laag naar hoog, met een lambda als sorteersleutel.