In gesprek met je programma
Zo werken functieaanroepen
Je gebruikte al functieaanroepen zonder ze zo te noemen. Met print() toonde je berichten en met input() verzamelde je antwoorden, nog voordat je hun gezamenlijke patroon kende. Dat patroon geven we nu een naam.
Een functie heeft een naam en een taak
Een functie is een bewerking met een naam en een bepaalde taak. Een functie aanroepen betekent dat je haar vraagt die taak nu uit te voeren:
print("Hello")
Dit is een functieaanroep. Je ziet drie onderdelen:
| Onderdeel | Betekenis |
|---|---|
print | De naam van de functie |
( en ) | De haakjes waarmee je de functie aanroept |
"Hello" | Een waarde die je aan de functie meegeeft |
De waarde tussen de haakjes is een argument. Daarmee geef je de functie informatie voor deze specifieke aanroep. Dezelfde functie kan de volgende keer een ander argument krijgen:
print("Good morning")
print("Good evening")
Dezelfde taak, een ander bericht.
Een functie kan een waarde teruggeven
Sommige functies leveren een waarde op die de rest van het programma kan gebruiken. Dat resultaat is de teruggegeven waarde van de functie.
Hier heb je al een teruggegeven waarde gebruikt:
name = input("What is your name? ")
Als de persoon Ada typt, kun je de aanroep zo voorstellen:
input("What is your name? ") -> "Ada"
De pijl is een uitleg, geen Python-syntaxis. Hij toont de waarde die de aanroep oplevert.
Een toewijzing slaat de teruggegeven waarde op
Python werkt eerst de rechterkant van een toewijzing af en koppelt het resultaat daarna aan de naam links. Bij de bovenstaande regel doet Python het volgende:
roep
input()aan;geef
"What is your name? "mee als argument;wacht op de teruggegeven string;
wijs die string toe aan
name.
De toewijzing moet wachten tot je op Enter drukt, omdat ze de teruggegeven waarde van de functie nodig heeft. Het zijn gewoon vier kleine stappen op volgorde.
Het diagram hieronder volgt dezelfde route: het argument gaat de functieaanroep in, de teruggegeven waarde komt eruit en een toewijzing koppelt die aan een variabele. De Engelse labels betekenen argument, functieaanroep, teruggegeven waarde en variabele.

Wat geeft input() terug in name = input("Your name? ")?
Volg het volledige verloop
In de playground blijft het patroon kort:
answer = input("Type anything: ")
print(f"You entered: {answer}")
Klik op Run en voer een antwoord in. Op de eerste regel is de vraag het argument, is je getypte tekst de teruggegeven waarde en slaat de toewijzing die op in answer. Op de tweede regel is de complete f-string het argument dat aan print() wordt meegegeven.
In de volgende les gebruikt int() hetzelfde patroon: geef de functie tekst als argument, ontvang een geheel getal als teruggegeven waarde en sla die waarde op in een variabele.
Opdracht
Voer het programma uit en voer een antwoord in. Volg de eerste regel en wijs aan:
het argument dat aan
input()wordt meegegeven;de waarde die wordt teruggegeven nadat je op Enter drukt;
de variabele waarin die teruggegeven waarde wordt opgeslagen.
Maak de quiz en klik daarna op Next om verder te gaan.