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.

Functies zijn herbruikbare blokken code. Ze nemen invoer aan, voeren een berekening uit en geven een resultaat terug. In deze notebook leer je functies definiëren, ze flexibel maken met parameters, en bestaande bibliotheken importeren.

Functies definiëren

Een functie definieer je met het sleutelwoord def. De docstring (eerste string in de functie) beschrijft wat de functie doet.

Hello, Alice!
Hello, Bob!

Parameters en standaardwaarden

Je kunt parameters een standaardwaarde (of default-waarde) geven. Die waarde wordt gebruikt wanneer de aanroeper het argument weglaat.

BMI: 22.9 (normal weight)
27.8

Meerdere returnwaarden

Python-functies kunnen meerdere waarden tegelijkertijd teruggeven via een tuple.

min=1, max=9, mean=5.14

*args en **kwargs

  • *args laat een functie een willekeurig aantal positionele argumenten aanvaarden (als tuple).

  • **kwargs laat een functie een willekeurig aantal sleutelwoordargumenten aanvaarden (als dictionary).

Je ziet dit patroon vaak in bibliotheken als Pandas en Matplotlib.

6
100
  name: Alice
  age: 22
  major: AI

Scope

Variabelen die binnenin een functie worden aangemaakt, zijn lokaal — ze bestaan niet buiten de functie. Variabelen buiten functies zijn globaal.

True
False

Modules importeren

Python’s kracht zit in zijn ecosysteem van bibliotheken. Je importeert ze met import.

Conventies die je overal in ML-code ziet:

4.0
5.0
3.141592653589793

Hulpfuncties schrijven voor data-analyse

In de praktijk schrijf je regelmatig kleine hulpfuncties om herhaalde stappen te bundelen. Hier zijn twee realistische voorbeelden:

[0.0, 0.25, 0.5, 0.75, 1.0]
['name_student', 'age', 'score_(%)']

Oefeningen

Oefening 1 — Schrijf een functie celsius_to_fahrenheit(celsius) die een temperatuur in Celsius omzet naar Fahrenheit. Formule: F = C * 9/5 + 32. Geef de waarde terug afgerond op 1 decimaal.

Oefening 2 — Schrijf een functie describe(values) die een lijst van getallen aanvaardt en een dictionary teruggeeft met de volgende sleutels: "n" (aantal), "min", "max", "mean", "median". Gebruik enkel ingebouwde Python-functies (sorted, len, sum, ...).

Oefening 3 — Schrijf een functie count_words(*sentences) die een willekeurig aantal strings accepteert en de totale woordtelling over alle zinnen teruggeeft. Gebruik *args.

Oefening 4 — Herschrijf de functie normalize() uit het notebook, maar voeg een parameter method toe die "minmax" (standaard) of "zscore" aanvaardt. Bij z-score normalisatie is de formule: z = (x - mean) / std. Tip: gebruik import math voor math.sqrt().