Een functie binnen de context van programmeren vertegenwoordigt een geïsoleerd en herbruikbaar codeblok dat is ontworpen om een specifieke operatie uit te voeren. Het onderscheidende kenmerk van functies ligt in het feit dat een gedetailleerde kennis van de interne werking niet noodzakelijk is. In plaats daarvan volstaat het om zich te richten op de volgende essentiële aspecten:
Naam van de Functie:
Iedere functie wordt geïdentificeerd door een unieke naam, die fungeert als een sleutel om de functie aan te roepen en uit te voeren.
Parameters: Bepaalde functies vereisen specifieke argumenten, bekend als parameters, om hun taken te vervullen. Deze parameters fungeren als de variabelen die de functie nodig heeft om haar operatie correct uit te voeren.
Geretourneerde Waarde: Na voltooiing van haar taak, kan een functie een resultaat opleveren, dat de 'geretourneerde waarde' wordt genoemd. Deze waarde kan vervolgens worden ingezet voor verdere berekeningen of verwerking binnen de code.
We zullen deze elementen in detail behandelen om zo een diepgaand inzicht te verschaffen in het functioneren van functies, evenals de effectieve toepassing ervan in uw programmeerprojecten.
In de context van Python-programmering is het toekennen van namen aan functies een cruciaal element voor het verbeteren van de leesbaarheid en het onderhoud van code. De regels voor het benoemen van functies zijn in wezen gelijk aan die voor variabelen.
Evenals bij variabelen is het een goede gewoonte om de naam van een functie zorgvuldig te kiezen op basis van een beknopte beschrijving van de specifieke taak die de functie vervult. Hierdoor wordt niet alleen de code overzichtelijker, maar begrijpt de programmeur ook beter het doel en de werking van de functie.
Enkele voorbeelden:
print( ) om data weer te geven (te printen) in de shell
int( ) om data om te zetten naar een geheel getal (integer)
float( ) om data om te zetten naar een reëel getal (float).
str( ) om data om te zetten naar tekst (string).
Functies worden aangeroepen met parameters, ook wel "argumenten" genoemd, die in de meeste gevallen verplicht zijn. Deze parameters worden tussen de haakjes geplaatst die achter de functienaam verschijnen. In situaties waarin er meerdere parameters betrokken zijn, dienen deze door komma's van elkaar te worden gescheiden.
De parameters representeren de waarden die de programmeur aan de functie verstrekt voor verwerking. Bijvoorbeeld, de functie `int()` wordt aangeroepen met één parameter, namelijk de waarde waarvan de functie probeert een gehele getal representatie te genereren.
Parameters kunnen zowel constanten, variabelen als expressies zijn.
Bijvoorbeeld:
getal_tekst = "12.54"
reeel_getal = float(getal_tekst)
geheel_getal = int(reeel_getal)
Aan de andere kant kan de `print()` functie worden aangeroepen met een variabel aantal parameters, zelfs nul, die door de functie op het scherm worden weergegeven, gevolgd door een overgang naar een nieuwe regel op het scherm.
Bijvoorbeeld:
getal_tekst = "12.54"
reeel_getal = float(getal_tekst)
geheel_getal = int(reeel_getal)
print("De helft van het reële getal",reeel_getal,"is",reel_getal/2)
print("De helft van het gehele getal",geheel_getal,"is",geheel_getal/2)
print("Tweemaal de originele waarde",getal_tekst,"is",2*getal_tekst)
In de meeste gevallen impliceert het aanroepen van een functie dat enkel de waarden van variabelen worden doorgegeven, wat bekendstaat als 'passing by value'. Dit houdt in dat de functie geen toegang heeft tot de variabelen die als parameters worden gebruikt; in plaats daarvan ontvangt de functie kopieën van de waarden die in de parameters zijn opgegeven. Het moet worden opgemerkt dat deze algemene regel niet van toepassing is op alle datatypen, maar wel geldt voor de datatypen die tot op heden zijn besproken.
Een retourwaarde is het resultaat van een functie na uitvoering. Dit resultaat kan verschillende datatypen omvatten, zoals getallen, tekst, objecten, afhankelijk van de functie. Als een functie een retourwaarde heeft, kan deze in de code worden gebruikt voor verdere verwerking.
Niet alle functies genereren echter een retourwaarde. Wanneer je probeert de retourwaarde van een functie zonder retourwaarde aan een variabele toe te wijzen, zal deze variabele geen waarde bevatten. Als je vervolgens probeert deze te printen, zal het resultaat "none" zijn.
In dit gedeelte gaan we een aantal eenvoudige functies bekijken die een retourwaarde geven. Enkele van deze hebben we reeds voordien behandeld
abs( ):
Geeft de absolute waarde van de variabele, constante of expressie die tussen de haakjes staat.
De parameter moet van het type float of integer zijn.
De functie heeft slechts één parameter (verplicht te gebruiken)
max( ):
Geeft de maximale waarde van de parameters tussen de haakjes.
Wanneer parameters strings zijn, dan is de retour waarde de parameter die alfabetisch het laatste komt (hoogste waarde)
min( ):
Geeft de minimale waarde van de parameters tussen de haakjes.
Vergelijkbaar met max( )
round(getal, decimalen)
Rond het getal af op het gevraagde aantal decimalen
De standaard waarde voor de parameter decimalen is 0, dus als je deze niet invult wordt er afgerond zonder decimalen.
Afronding gebeurt volgens de wiskundige regels 1, 2, 3 en 4 naar beneden, vanaf 5 naar boven
str( )
Zet de parameter om naar een string (tekst).
int( )
Maak van de parameter een geheel getal, een integer
Alles na het decimale punt valt weg, er wordt geen rekening gehouden met afronding.
Je kan int ( ) gebruiken om een string om te zetten naar een integer maar de string moet dan wel een tekst bevatten die een geheel getal voorstelt.
float( )
Maak van de parameter een reëel getal, een float