Onderwerpen

Schotel

Functies

Deze week leer je code een naam geven. Een functie is een stuk code dat je één keer opschrijft - dat heet de functiedefinitie - en daarna zo vaak aanroept als je wilt. In de definitie staan de parameters: de namen voor haar invoer. Bij een aanroep geef je daar argumenten voor mee, en met return geeft de functie een resultaat terug. Je ziet ook wat Python tijdens zo’n aanroep doet: elke aanroep krijgt een eigen plek in het geheugen, met eigen variabelen die verdwijnen zodra de functie klaar is.

Aan het eind van de week kan je een probleem opdelen in functies die elk één ding doen, die functies zelf schrijven en testen, en ze een docstring geven: de regel die vertelt wat de functie doet. In week 4 komen daar lussen bij, die zo’n functie net zo vaak uitvoeren als nodig is.

Waar je vandaan komt

In week 2 riep je al functies aan: input vroeg iets aan de gebruiker, print zette iets op het scherm en len telde de tekens van een string. Wat er binnenin gebeurde hoefde je niet te weten. Deze week maak je ze zelf.

Eén functie schreef je zelfs al. Het taartavontuur uit de basisopgave stond van begin tot eind in def adventure():, met de aanroep eronder - één groot blok met alle variabelen en if-keuzes van die week op één hoop. Zo’n programma knip je nu in functies. De strings en lijsten van week 2 verdwijnen daarbij niet: ze gaan als argument een functie in en komen als resultaat weer terug.