Eine Funktion kann als Parameter Werte verarbeiten, die Sie der Funktion übergeben, damit die Funktion unter Benutzung dieser Werte irgendetwas tun kann. Diese Parameter verhalten sich genauso wie gewöhnliche Variablen, nur dass deren Werte nicht innerhalb der Funktion zugewiesen werden, sondern beim Aufruf der Funktion definiert werden.
Parameter werden innerhalb des Klammernpaars der Funktionsdefinition festgelegt und durch Kommas voneinander getrennt. Wenn wir die Funktion später aufrufen, legen wir die Werte auf die gleiche Weise fest. Beachten Sie aber die Terminologie - während die in der Funktionsdefinition angegebenen Namen Parameter heißen, werden die Werte, die Sie beim Funktionsaufruf übergeben, Argumente genannt.
Beispiel 7.2. Funktionsparameter benutzen (funk_param.py)
#!/usr/bin/python def printMax(a, b): if a > b: print a, 'ist Maximalwert' else: print b, 'ist Maximalwert' printMax(3, 4) # uebergebe Zahlen direkt als Literale x = 5 y = 7 printMax(x, y) # uebergebe Variablen als Argumente
Wir definieren hier eine Funktion printMax
mit zwei Variablen
a
und b
. Wir berechnen die größere Zahl
indem wir eine einfache if..else
-Anweisung verwenden, und geben dann
die größere Zahl mit print
aus.
Beim ersten Aufruf der Funktion printMax
übergeben wir die
Zahlen direkt als Argumente. Beim zweiten Aufruf benutzen wir hierfür Variablen.
printMax(x, y)
bewirkt, dass der Wert des Argumentes
x
dem Parameter a
zugewiesen
wird, und der Wert des Argumentes y
dem Parameter
b
. Für die Funktion printMax
ist es egal, auf welche Weise man ihr die Argumente übergibt, sie arbeitet immer gleich.