⊗pyPmFnLa 16 of 129 menu

Lambda-Funktion in Python

Angenommen, wir haben eine Funktion func, die als Parameter eine Liste und einen Callback entgegennimmt. Die Funktion wird eine neue Liste aus den Elementen der ursprünglichen Liste erstellen. Dabei wird auf jedes Element der Callback angewendet:

def func(lst, callback): res = [] for el in lst: res.append(callback(el)) return res

Erstellen wir nun eine Funktion square, die die ihr übergebene Zahl quadriert:

def square(num): return num ** 2

Lassen Sie uns func eine Zahlenliste und die Funktion square als Callback übergeben:

print( func([1, 2, 3], square) )

In der Konsole wird eine neue Liste ausgegeben, die aus den Quadraten der Zahlen besteht:

[1, 4, 9]

Dieser Code kann jedoch erheblich verkürzt werden, indem man eine Lambda-Funktion verwendet - eine anonyme Funktion, die mit dem Schlüsselwort lambda aufgerufen wird und in einer Zeile geschrieben wird. Daher können in Lambda-Funktionen nur Funktionen umgeschrieben werden, deren Code eine Zeile umfasst.

Die Syntax der Lambda-Funktion sieht so aus:

lambda Funktionsparameter: Operation mit dem Funktionsparameter

Lassen Sie uns die Funktion square mit einer Lambda-Funktion umschreiben und sie an den Parameter func übergeben:

print( func([1, 2, 3], lambda num: num ** 2) )

Die Lambda-Funktion kann in eine Variable geschrieben werden:

square = lambda num: num ** 2 print( func([1, 2, 3], square) )

Schreiben Sie den folgenden Code mit einer Lambda-Funktion um:

def func(num, clb): return clb(num) def clb(num): return num + 1 print( func(2, clb) )

Schreiben Sie den folgenden Code mit einer Lambda-Funktion um:

def func(num, clb1, clb2): return (clb1(num), clb2(num)) def clb1(num): return num + 1 def clb2(num): return num - 1 print( func(2, clb1, clb2) )

Schreiben Sie den folgenden Code mit einer Lambda-Funktion um:

def func(num1, num2, clb): res = clb(num1) + num2 return res def clb(num): return num ** 3 print(func(2, 6, clb))
Deutsch
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wir verwenden Cookies für den Betrieb der Website, Analyse und Personalisierung. Die Datenverarbeitung erfolgt gemäß der Datenschutzerklärung.
alle akzeptieren anpassen ablehnen