Als developer, wil ik code die ik vaker nodig heb één keer opschrijven in een functie, zodat ik een wijziging op één plek doe en een fout niet op drie plekken tegelijk zit.
Hoe Python functies aanroept en hoe return values door elkaar doorgegeven worden.
Je hebt nu functies geleerd. Volgende stap: dezelfde functie meerdere keren aanroepen in hetzelfde programma.
Stel: je wilt 3 getallen controleren:
# Herhaalde logica
if temp1 < 0 or temp1 > 100:
print("ERROR: temp1 ongeldig")
else:
print("OK: temp1")
if temp2 < 0 or temp2 > 100:
print("ERROR: temp2 ongeldig")
else:
print("OK: temp2")
if temp3 < 0 or temp3 > 100:
print("ERROR: temp3 ongeldig")
else:
print("OK: temp3")
Probleem: 15 regels code voor 3 controles. Bug op één plek = bug op drie plekken.
def check_temp(value):
if value < 0 or value > 100:
print("ERROR: ongeldig")
else:
print("OK")
# Aanroepen
check_temp(temp1)
check_temp(temp2)
check_temp(temp3)
Voordeel: 6 regels logica + 3 aanroepen = 9 regels. Eenmaal schrijven, drievoudig gebruiken.
Wat gebeurt er stap voor stap? Klik "Volgende stap" om te zien:
def add(a, b):
return a + b
result = add(5, 3)
print(result)
Een keten van functies: de uitkomst van de ene is de invoer van de volgende.
Onderaan staat een functie zonder return.
Probeer daarna: zet broken_double() in het midden van de keten.
Wat komt er dan uit?
Scenario: een webserver schrijft logregels. Elke regel bestaat uit drie delen, gescheiden
door een |: het tijdstip, het niveau (INFO, ERROR of DEBUG) en een bericht. Jij schrijft een
kleine pijplijn van drie functies: regel opknippen → niveau beoordelen → een nette uitvoerregel maken.
Gegeven:
entry = "2025-07-28 10:45:23|ERROR|Database connection failed"
def parse_log(text):
# TODO
pass
def is_error(level):
# TODO
pass
def format_result(parts):
# TODO
pass
Acceptatiecriteria:
parse_log() geeft een lijst terug met drie onderdelen: tijdstip, niveau en berichtis_error() geeft True bij het niveau ERROR en False bij elk ander niveauformat_result() geeft één regel terug: een ALERT-regel bij een fout, een OK-regel bij de rest — met tijdstip en bericht erin