Lambda-Funktionen

In Python ist eine Lambda-Funktion eine anonyme Funktion, also eine Funktion, die ohne Namen deklariert wird. Es handelt sich um eine kleine und eingeschränkte Funktion, die nicht länger als eine Zeile ist. Wie eine normale Funktion kann eine Lambda-Funktion mehrere Argumente haben, aber nur einen Ausdruck, der ausgewertet und zurückgegeben wird.

Die Syntax einer Lambda-Funktion lautet:

lambda ARGUMENTS: EXPRESSION

>>> add = lambda x, y: x + y
>>> add(2, 3)
5

Bemerkung

Es gibt in der Lambda-Funktion keine return-Anweisung. Der einzelne Ausdruck nach dem Doppelpunkt ist der Rückgabewert.

Im nächsten Beispiel wird eine lambda-Funktion innerhalb eines Funktionsaufrufs erstellt. Es gibt jedoch keine globale Variable, um die Werte der lambda-Funktion zu speichern:

1>>> count = ['1', '123', '1000']
2>>> max(count)
3'123'
4>>> max(count, key=lambda val: int(val))
5'1000'

In diesem Fall akzeptiert die Funktion max() das Argument key, das definiert, wie die Größe jedes Eintrags bestimmt werden soll. Mithilfe einer Lambda-Funktion, die jede Zeichenkette in eine ganze Zahl umwandelt, kann max die numerischen Werte vergleichen und so das erwartete Ergebnis ermitteln.