Dieser Artikel bietet Ihnen eine Einführung in die Verwendung der Lambda-Funktion in Python (mit Beispielen). Freunde in Not können darauf zurückgreifen.
Anonymes Funktionslambda: bezieht sich auf einen Funktions- oder Unterprogrammtyp, für den kein Bezeichner (Funktionsname) definiert werden muss.
Die Lambda-Funktion kann eine beliebige Anzahl von Parametern (einschließlich optionaler Parameter) empfangen und den Wert eines einzelnen Ausdrucks zurückgeben.
Syntax:
lambda [arg1 [,arg2,.....argn]]:expression
Die Parameter vor dem Doppelpunkt sind mehrere, durch Kommas getrennt, und der auf der rechten Seite des Doppelpunkts ist der Ausdruck (kann nur sein). eins). Tatsächlich ist der Rückgabewert von Lambda die Adresse einer Funktion, bei der es sich um das Funktionsobjekt handelt.
Beispiel:
1. Weisen Sie die Lambda-Funktion einer Variablen zu und rufen Sie die Lambda-Funktion indirekt über diese Variable auf.
def sum(x,y): return x+y print(sum(1,2))
Verwenden Sie die Lambda-Funktion:
sum = lambda x,y : x+y print(sum(1,2))
2. Übergeben Sie die Lambda-Funktion als Parameter an andere Funktionen. Einige in Python integrierte Funktionen akzeptieren Funktionen als Parameter.
def odd(x): return x%2 temp = range(10) show = filter(odd,temp) print(list(show)) #[1, 3, 5, 7, 9]
Verwenden Sie die Lambda-Funktion:
print(list(filter(lambda x: x%2,range(10)))) #[1, 3, 5, 7, 9]
Zu diesem Zeitpunkt wird die Lambda-Funktion verwendet, um die Bedingungen zum Filtern von Listenelementen anzugeben.
Ein weiteres Beispiel:
map(lambda x: x+1, [1, 2,3]) #[2, 3, 4]
Zu diesem Zeitpunkt wird die Lambda-Funktion verwendet, um eine gemeinsame Operation für jedes Element in der Liste anzugeben.
Zusätzlich: sorted(), map()
3. Verwenden Sie die Lambda-Funktion als Rückgabewert anderer Funktionen und geben Sie sie an den Aufrufer zurück.
Der Rückgabewert einer Funktion kann auch eine Funktion sein. Beispielsweise gibt
return lambda x, y: x+y
eine Additionsfunktion zurück. Zu diesem Zeitpunkt ist die Lambda-Funktion tatsächlich eine Funktion, die innerhalb einer bestimmten Funktion definiert ist und als verschachtelte Funktion oder interne Funktion bezeichnet wird. Dementsprechend werden Funktionen, die verschachtelte Funktionen enthalten, externe Funktionen genannt. Innere Funktionen können auf lokale Variablen äußerer Funktionen zugreifen. Diese Funktion ist die Grundlage der Abschlussprogrammierung.
4. Weisen Sie die Lambda-Funktion anderen Funktionen zu und ersetzen Sie so andere Funktionen durch die Lambda-Funktion.
Um beispielsweise die Funktion „sleep“ in der Standardbibliothekszeit zu verspotten, können wir während der Programminitialisierung Folgendes aufrufen:
time.sleep=lambda x:None
. Auf diese Weise wird beim Aufrufen der Schlaffunktion der Zeitbibliothek im nachfolgenden Code nicht die ursprüngliche Funktion ausgeführt. Wenn Sie beispielsweisetime.sleep(3)
ausführen, wird das Programm 3 Sekunden lang nicht schlafen, aber nichts tun
5 Reduzieren Sie die if...else-Anweisung auf einen einzigen bedingten Ausdruck,
Die Syntax lautet: Ausdruck1, wenn A, sonst Ausdruck2
Wenn A wahr ist, ist das Ergebnis des bedingten Ausdrucks Ausdruck1, andernfalls ist es Ausdruck2
def s(x): if x==1: return "yes" else: return "no" print(s(0)) print(s(1))
Verwenden Sie die Lambda-Funktion:
s=lambda x:"yes" if x==1 else "no" print(s(0)) print(s(1))
[Verwandte Empfehlungen: Python-Video-Tutorial]
Das obige ist der detaillierte Inhalt vonEinführung in die Verwendung der Lambda-Funktion in Python (mit Beispielen). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!