
PF
BUILDING BLOCKS OF CODE
02 2025-2026
We ontdekken hoe we gegevens omzetten met typecasting, berekeningen en vergelijkingen maken met operators, beslissingen laten nemen met if-else statements, en code overzichtelijk houden met functies.


BUILDING BLOCKS OF CODE
INT, FLOAT & TYPECASTING
01




01
INT, FLOAT & TYPECASTING
Integer (int)
age = 25 # Dit is een integer
print(age) # Geeft: 25In dit voorbeeld is de variabele een integer (25), wat betekent dat het een heel getal is.
Float (int)
height = 1.75 # Dit is een float
print(height) # Geeft: 1.75In dit voorbeeld is de variabele een float (1.75), wat betekent dat het een getal met een decimale punt is.
INT vs FLOAT
Eerder werkten we vooral met strings, maar Python kent veel meer soorten gegevens. Zo kunnen we ook met getallen werken, waarbij we onderscheid maken tussen twee belangrijke typen: Integer (int) en Float.
LET OP: In programmeren is een komma aangeduid met een punt!


01
INT, FLOAT & TYPECASTING
Van Float naar Integer - int()
decimal_number = 7.99
whole_number = int(decimal_number) # Convert float naar int
print(whole_number) # Geeft: 7In dit voorbeeld wordt het getal 7.99 omgezet naar 7 omdat de int()-functie het decimaal gedeelte weglaat.
Van Float naar Integer - float()
whole_number = 5
decimal_number = float(whole_number) # Convert int naar float
print(decimal_number) # Geeft: 5.0In dit voorbeeld wordt het getal 5 omgezet naar de float 5.0
TYPECASTING
Bewerkingen met int en float hebben invloed op het eindresultaat én op het datatype van de uitkomst. Daarom maken we gebruik van Typecasting. Typecasting betekent het omzetten van het ene datatype naar een ander.


01
INT, FLOAT & TYPECASTING
Van String naar Integer
number_string = "45"
number = int(number_string) # Convert string naar int
print(number) # Geeft: 45Van String naar Float
decimal_string = "3.14"
decimal_number = float(decimal_string) # Convert string naar float
print(decimal_number) # Geeft: 3.14
#Omzetten naar een int zou hier resulteren in '3'TYPECASTING
Met een string kan je niet zomaar wiskundige berekeningen doen. We kunnen deze wel omzetten naar een int of een float.
BUILDING BLOCKS OF CODE
OPERATORS
02


01


02
OPERATORS
Python heeft verschillende soorten operators, waaronder:
- Rekenkundige operators (Arethmic Operators)
- Vergelijkingsoperators (Relational Operators)
- Logical Operators
- Assignment Operators
OPERATORS
In Python gebruiken we operators om berekeningen uit te voeren en waarden te vergelijken. Operators zijn symbolen die bewerkingen op variabelen en waarden uitvoeren.


02
OPERATORS
| Operator | Beschrijving | Voorbeeld |
|---|---|---|
| + | Optellen |
5 + 3 geeft 8
|
| - | Aftrekken |
5 - 3 geeft 2
|
| * | Vermenigvuldigen |
5 * 3 geeft 15
|
| / | Delen |
5 / 2 geeft 2.5
|
| // | Floor division (gehele deling) |
5 // 2 geeft 2
|
| % | Modulus (rest van de deling) |
5 % 2 geeft 1
|
| ** | Machtsverheffing |
5 ** 2 geeft 25
|
ARITHMETIC
Deze operators worden gebruikt voor wiskundige berekeningen.


02
OPERATORS
| Operator | Beschrijving | Voorbeeld |
|---|---|---|
| == | Gelijk aan |
5 == 3 geeft False
|
| != | Niet gelijk aan |
5 != 3 geeft True
|
| > | Groter dan |
5 > 3 geeft True
|
| < | Kleiner dan |
5 < 3 geeft False
|
| >= | Groter dan of gelijk aan |
5 >= 2 geeft True
|
| <= | Kleiner dan of gelijk aan |
5 <= 2 geeft False
|
RELATIONAL
Vergelijksoperatoren worden gebruikt om waarden te vergelijken en geven True of False terug.


02
OPERATORS
| Operator | Beschrijving | Voorbeeld |
|---|---|---|
| and | Waar als beide voorwaarden voldoen |
(5 > 3 and 2 < 4) geeft True
|
| or | Waar als minstens één voorwaarde voldoet |
(5 > 3 or 2 < 4) geeft True
|
| not | Keert de waarde om (bv. False -> True) |
not(5 > 3) geeft False
|
LOGICAL
Logische operators worden gebruikt om meerdere voorwaarden te combineren. Ook dit geeft True of False terug


02
OPERATORS
| Operator | Beschrijving | Voorbeeld |
|---|---|---|
| = | Toewijzing | x = 5 |
| += | Optellen en toewijzen |
x += 3 (gelijk aan x = x + 3) |
| -= | Aftrekken en toewijzen |
x -= 2 (gelijk aan x = x - 2) |
| *= | Vermenigvuldigen en toewijzen |
x *= 4 (gelijk aan x = x * 4) |
| /= | Delen en toewijzen |
x /= 2 (gelijk aan x = x / 2) |
ASSIGNMENT
Assignment operators worden gebruikt om waarden aan variabelen toe te wijzen en direct te wijzigen.


02
OPERATORS
Denk zelf eens na over de volgende statements en bepaal wat het juiste resultaat zou moeten zijn.
TRY IT OUT
| 10 <= 12 | True |
| 4 == 10 | False |
| 8 % 2 == 0 | True |
| 7 < 2 or 9 > 4 | True |
| not (6 == 6) | False |
| (7 > 5 and 2 > 3) or (4 <= 4) | True |
| ((15 / 3) == 5) and not (4 * 2 < 7) | True |
| (10 > 20) or ((3 ** 2 == 9) and 7 < 6) | False |
| not ((8 % 3 == 2) and (5 * 2 == 11)) | True |
| (3 * 3 == 9) and (10 / 2 == 5) | True |


02
OPERATORS
Doel: Gebruik operators en typecasting om een BMI te berekenen.
Schrijf een Python-programma dat de Body Mass Index (BMI).
Formule voor BMI: gewicht (kg) / (lengte (m) * lengte (m)).
Voorbeeld uitvoer:
Voer uw gewicht in (kg): 70
Voer uw lengte in (m): 1.75
Uw BMI is: 22.86Vereisten:
- Vraag de gebruiker om hun gewicht in kilogrammen en lengte in meters.
- Gebruik rekenkundige operators om de BMI te berekenen.
- Rond het resultaat af op 2 decimalen met de functie
round(). - Print de BMI met een duidelijke boodschap.
OPDRACHT
BUILDING BLOCKS OF CODE
CONDITIONAL STATEMENTS
03


01


03
CONDITIONAL STATEMENTS
De if-else statement wordt gebruikt om beslissingen te nemen in je code. Het stelt je in staat om condities te evalueren en op basis van die condities verschillende blokken code uit te voeren.
De algement structuur van een if-else statement is als volgt
if <voorwaarde>:
# Code die uitgevoerd wordt als de voorwaarde True is
else:
# Code die uitgevoerd wordt als de voorwaarde False isIF - ELSE


03
CONDITIONAL STATEMENTS
We nemen een eenvoudig voorbeeld waarin we het invoeren van een getal controleren en bepalen of het positief of negatief is.
Schrijf volgende code in je script
number = int(input("Geef een getal in: ")) #typecasten onze string naar int
if number > 0:
print("Het getal is positief.")
else:
print("Het getal is niet positief.")Hier is het belangrijk dat we ons getal typecasten (string -> int) zodat de operators hun werk kunnen doen.
IF - ELSE


03
CONDITIONAL STATEMENTS
Hoewel je alleen een if kunt gebruiken, is dat niet altijd efficiënt. Zonder elif of else worden alle condities afzonderlijk geëvalueerd, ook als verdere acties niet nodig zijn.
Voorbeeld code
number = int(input("Geef een getal in: "))
if number > 0:
print("Het getal is positief.")
if number < 0:
print("Het getal is negatief.")
if number == 0:
print("Het getal is nul.")Dit vereist extra berekeningen van het programma, wat niet ideaal of efficiënt is
ONLY IF


03
CONDITIONAL STATEMENTS
Met elif en else wordt alleen de eerste waarheidsgetrouwe conditie uitgevoerd. Zo controleer je meerdere condities efficiënt, terwijl else alleen wordt uitgevoerd als geen van de eerdere condities waar is.
if <voorwaarde1>:
# Code als voorwaarde1 waar is
elif <voorwaarde2>:
# Code als voorwaarde2 waar is
else:
# Code als geen van de voorwaarden waar isDe algement structuur van een if-elif-else statement is als volgt
ELIF / ELSE


03
CONDITIONAL STATEMENTS
We gebruiken opnieuw het voorbeeld van positief of negatief getal, maar deze keer op een efficiënte manier.
number = int(input("Geef een getal in: "))
if number > 0:
print("Het getal is positief.")
elif number < 0:
print("Het getal is negatief.")
else:
print("Het getal is nul.")Schrijf volgende code in je script
Test nu alle scenario’s. We controleren onze code altijd zorgvuldig en grondig.
ELIF / ELSE


03
CONDITIONAL STATEMENTS
in Python 3.10 werd de match-statement geintroduceerd. Dit is een krachtige manier om patroon matching toe te passen.
match <variabele>:
case <waarde1>:
# Code als <variabele> gelijk is aan <waarde1>
case <waarde2>:
# Code als <variabele> gelijk is aan <waarde2>
case _:
# Code als geen van de bovenstaande gevallen waar isDe structuur van de match-statement is als volgt
MATCH


03
CONDITIONAL STATEMENTS
we maken een voorbeeld waarbij we verschillende berichten afdrukken op basis van de dag van de week
day = input("Welke dag is het vandaag? ").lower()
match day:
case "maandag":
print("Het is maandag, begin van de week!")
case "vrijdag":
print("Het is vrijdag, bijna weekend!")
case "zondag":
print("Het is zondag, tijd om te ontspannen.")
case _:
print("Dit is een andere dag van de week.")Schrijf volgende code in je script
Run het script en test alle cases uit.
MATCH
BUILDING BLOCKS OF CODE
FUNCTIONS (DEFINITIONS)
04


01


04
FUNCTION (DEFINITIONS)
Een functie is een blok code dat een specifieke taak uitvoert en herhaaldelijk kan worden aangeroepen. Functies delen de code op in kleinere, beheersbare delen. In Python definieer je een functie met def.
Voeg volgende functie toe aan je script.
def greet():
print("Hello, MedTech!")TIP: Wanneer je in python een ‘:’ ziet dan moet je een indenatie (tab) invoegen.
Voer nu de functie uit door het aan te roepen als volgt.
def greet(): #Hier maken we een functie aan
print("Hello, MedTech!")
greet() #Hier roepen we het aanDEF


04
FUNCTION (DEFINITIONS)
Functies accepteren paramters, wat betekent dat je gegevens aan de functie kunt doorgeven. Deze gegevens worden gebruikt in de functie om een bepaalde taak uit te voeren.
Maak volgende functie aan in het script.
def greet(name):
print("Hello, " + name + "!")'name' kan je hier zien als een tijdelijke variabele die we gebruiken in de functie.
Voer nu de functie uit door het aan te roepen en een parameters mee te geven.
name = input("What is your name? ")
greet(name) # Als de gebruiker 'John' invoert, geeft het: Hello, John!PARAMETERS


04
FUNCTION (DEFINITIONS)
Een functie is in staat om zoveel parameters te accepteren zoals je wenst. Dit doen we door deze te scheiden met een ','-teken.
Maak volgende functie aan in het script.
def introduce(name, age):
print("Hello, my name is " + name + " and I am " + str(age) + " years old.")We converteren onze leeftijd naar een str omdat ik een nummer kan verwachten.
Voer nu de functie uit door het aan te roepen en de parameters mee te geven.
name = input("What is your name? ")
age = int(input("What is your age? "))
introduce(name, age) # Bijvoorbeeld: Hello, my name is John and I am 25 years old.PARAMETERS +


04
FUNCTION (DEFINITIONS)
Met de return-statement kun je een waarde teruggeven uit een functie, zodat die waarde kan gebruikt worden in het programma en/of worden opgeslaan in een variabele.
Maak volgende functie aan om getallen op te tellen.
def add(a, b):
return a + bVoer nu de functie uit door het aan te roepen en de parameters mee te geven.
result = add(5, 3)
print(result) # Geeft: 8RETURN


04
FUNCTION (DEFINITIONS)
Je kunt standaardwaarden instellen voor de parameters van een functie, zodat de functie werkt zelfs als je geen argumenten doorgeeft.
Maak volgende functie aan met een standaardwaarde.
def greet(name="Guest"):
print("Hello, " + name + "!")Voer nu de functie uit door het aan te roepen zonder en met een parameter.
greet() # Geeft: Hello, Guest!
greet("Alice") # Geeft: Hello, Alice!DEFAULT


04
FUNCTION (DEFINITIONS)
Soms wil je een functie schrijven die een willekeurig aantal argumenten kan ontvangen. In Python kan dat met de args-syntaxis.
Maak volgende functie aan met args *
def print_names(*names):
for name in names:
print(name)Hier gebruiken we een for-loop. Dit komt later nog aan bod maar hebben we in dit geval nodig.
Voer nu de functie uit door het aan te roepen met een paar parameters.
print_names("John", "Alice", "Bob")
# Geeft:
# John
# Alice
# BobARGS


04
FUNCTION (DEFINITIONS)
In Python moet je een functie eerst definiëren voordat je deze kunt aanroepen. Doe je dat niet, dan verschijnt er een NameError omdat de functie nog niet bekend is.
Foutieve volgorde
greet() # Fout! De functie is nog niet gedefinieerd (bestaat nog niet)
def greet():
print("Hello, world!")def greet():
print("Hello, world!")
greet() # Dit werkt nu correct!Correcte volgorde
ORDER


04
FUNCTION (DEFINITIONS)
Om code overzichtelijk te houden, plaatsen we de hoofdlogica meestal in een main()-functie, die we pas aan het einde van het script aanroepen. Zo blijft de structuur duidelijk en voorkom je dat de functie op een ongewenst moment wordt uitgevoerd.
def main():
name = input("What is your name? ")
greet(name)
def greet(name):
print("Hello, " + name + "!")
# Het aanroepen van de main-functie aan het einde van je script
if __name__ == "__main__":
main()
De voorwaarde if __name__ == "__main__": zorgt ervoor dat de code in de main()-functie alleen wordt uitgevoerd als het script rechtstreeks wordt uitgevoerd.
MAIN()
BUILDING BLOCKS OF CODE
EXCEPTIONS
05


01


05
EXCEPTIONS
"In Python, errors can occur during the execution of a program. These errors are called exceptions. An exception is an error that happens when a program tries to perform an action that is not allowed or that leads to an invalid state. For example, trying to read from an empty file or dividing by zero."
EXCEPTION


05
EXCEPTIONS
In plaats van dat je programma crasht wanneer een exception optreedt, kun je met behulp van de try-except-blokken in Python deze fouten afhandelen en een meer controleerbare manier van reageren bieden.
De basisstructuur van exception-afhandeling
try:
# Code die mogelijk een exception kan veroorzaken
except <fout-type>:
# Code die uitgevoerd wordt als de exception optreedtDe try-blok bevat de code die je probeert uit te voeren. Als er een fout optreedt, wordt de code in de except-blok uitgevoerd.
De except-blok vangt een specifieke fout (exception) op en laat de code binnenin uitvoeren als die fout optreedt.
TRY ... EXCEPT


05
EXCEPTIONS
Stel je voor dat je een programma hebt dat de gebruiker om een getal vraagt en dit getal deelt door een ander getal. Er is echter een kans dat de gebruiker nul invoert, wat zou leiden tot een fout.
try:
a = int(input("Geef het eerste getal: "))
b = int(input("Geef het tweede getal: "))
result = a / b
print("Het resultaat is:", result)
except ZeroDivisionError:
print("Fout: je kunt niet delen door nul!")
except ValueError:
print("Fout: zorg ervoor dat je getallen invoert!")Het try-blok bevat de code die normaal zou worden uitgevoerd: de invoer van twee getallen en de deling.
De except ZeroDivisionError-blok vangt de fout op als de gebruiker probeert door nul te delen.
De -except ValueError-blok vangt de fout op als de gebruiker geen geldige getallen invoert.
TRY ... EXCEPT


05
EXCEPTIONS
Python biedt verschillende specifieke fouttypes die je kunt vangen met een except-blok. Een paar van de meest voorkomende fouttypes zijn:
ZeroDivisionError: delen door nul.
ValueError: ongeldige waarde, bv. string to int omzetten die geen getal is.
FileNotFoundError: een niet-bestaand bestand openen.
IndexError: een lijst benaderen met een ongeldige index.
TYPES


05
EXCEPTIONS
Je hoeft niet telkens een specifieke error te plaatsen. Soms weet je ook niet welke fout er zal optreden. Daarvoor hebben we 'Exception' als algemene.
try:
# Code die een onbekende fout kan veroorzaken
x = 10 / 0 # Dit veroorzaakt een ZeroDivisionError
except Exception as e:
print(f"Er is een onverwachte fout opgetreden: {e}")De 'except Exception as e' vangt alle types van fouten die niet eerder specifiek gedefinieerd zijn.
GENERAL


05
EXCEPTIONS
Naast try en except kun je ook een else-blok en een finally-blok toevoegen om respectievelijk code uit te voeren als er geen exception optreedt, of om altijd bepaalde taken uit te voeren, ongeacht of er een fout optreedt of niet.
try:
number = int(input("Geef een getal in: "))
result = 10 / number
except ZeroDivisionError:
print("Fout: je kunt niet delen door nul!")
except ValueError:
print("Fout: je moet een geldig getal invoeren!")
else:
print("Het resultaat is:", result)
finally:
print("Dit wordt altijd uitgevoerd, ongeacht of er een fout optrad.")De 'except Exception as e' vangt alle types van fouten die niet eerder specifiek gedefinieerd zijn.
ELSE ... FINALLY
PF/2 - Building Blocks of Code
By Niels Minne
PF/2 - Building Blocks of Code
- 240