Meerdere parameters doorgeven aan een functie in Python
Stel we hebben een functie die meerdere numerieke parameters accepteert:
def func(num1, num2):
return num1 + num2
print(func1(2, 3))
Bij het aanroepen van de functie komen de opgegeven getallen 2
en 3 terecht in de variabelen num1
en num2 respectievelijk.
Maar er zijn gevallen waarin je bij het aanroepen
van een functie veel parameters wilt doorgeven, waarvan
het aantal van tevoren onbekend is. In Python kun je
bij het declareren van de functie slechts één
variabele opgeven, waaruit later een tuple
van alle doorgegeven parameters wordt afgeleid.
Hiervoor moet je voor deze variabele
het symbool * plaatsen. Zo'n variabele
wordt conventioneel args genoemd, maar je
kunt er ook elke andere naam aan geven. En om
alle parameters weer te geven, moet je in de
body van de functie deze variabele opschrijven, maar dan zonder
*:
def func(*args):
return args
print(func(1, 2, 3)) # geeft (1, 2, 3) weer
Vervolgens kunnen er allerlei andere bewerkingen worden uitgevoerd met de verkregen parameters. Laten we hun som berekenen:
def func(*args):
return sum(args)
print(func(1, 2, 3)) # geeft 6 weer
Schrijf een functie die een onbeperkt aantal gebruikersnamen als parameters accepteert en deze uitprint naar de console in de vorm van een tuple.