A Byte of Python

Funktionsparameter

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.

Funktionsparameter benutzen

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
				
				

Ausgabe

				
$ python funk_param.py
4 ist Maximalwert
7 ist Maximalwert
				
				

So funktioniert es

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.