Dieser Artikel bietet Ihnen eine einfache Analyse der Lambda-Funktion in Python (mit Beispielen). Ich hoffe, dass er für Freunde hilfreich ist.
1. Die Lambda-Funktion wird auch als anonyme Funktion bezeichnet, das heißt, die Funktion hat keinen bestimmten Namen. Schauen wir uns zunächst das einfachste Beispiel an:
def f(x): return x**2 print f(4)
Wenn Sie Lambda in Python verwenden, würde es so geschrieben werden:
g = lambda x : x**2 print g(4)
2. Im Vergleich zu gewöhnlichen Funktionen lässt Lambda einfach den Funktionsnamen weg und Gleichzeitig können anonyme Funktionen nicht an anderer Stelle geteilt und aufgerufen werden.
Tatsächlich haben Sie Recht, Lambda spielt in einer dynamischen Sprache wie Python keine weltbewegende Rolle, denn es gibt viele andere Methoden, die Lambda ersetzen können.
1. Wenn Sie Python zum Schreiben einiger Ausführungsskripte verwenden, kann die Verwendung von Lambda den Prozess der Funktionsdefinition einsparen und den Code rationalisieren.
2. Bei einigen abstrakten Funktionen, die nicht an anderer Stelle wiederverwendet werden, ist es manchmal schwierig, die Funktion zu benennen. Bei der Verwendung von Lambda müssen Sie keine Probleme mit der Benennung berücksichtigen.
3. Verwenden Sie Lambda, um den Code zu bestimmten Zeiten verständlicher zu machen.
Lambda-Grundlagen
In der Lambda-Anweisung können mehrere Parameter stehen, die durch Kommas getrennt sind, und auf der rechten Seite steht der Rückgabewert der Dickdarm. Die Lambda-Anweisung erstellt tatsächlich ein Funktionsobjekt:
>>> foo = [2, 18, 9, 22, 17, 24, 8, 12, 27] >>> print filter(lambda x: x % 3 == 0, foo) [18, 9, 24, 12, 27] >>> print map(lambda x: x * 2 + 10, foo) [14, 46, 28, 54, 44, 58, 26, 34, 64] >>> print reduce(lambda x, y: x + y, foo) 139
In Bezug auf die Objektdurchlaufverarbeitung ist die for..in..if-Syntax von Python tatsächlich sehr leistungsfähig und einfacher zu lesen als Lambda.
defaultdict ist ein Wörterbuchtyp. Sie können den Standardwert für defaultdict festlegen, und Sie können den Standardwert über Lambda festlegen.
Hier ein paar Beispiele:
from collections import * x = defaultdict(lambda:0) //默认值是0 print x[0] y =defaultdict(lambda:defaultdict(lambda:0))//默认值是一个字典,字典的默认值是0 print y[0] z = defaultdict(lambda:[0,0,0])//默认值是一个列表,[0,0,0]. print z[0]
Ausgabeergebnis:
0 defaultdict(<function <lambda> at0x7f097797af50>, {}) [0, 0, 0]
Das obige ist der detaillierte Inhalt vonEinfache Analyse der Lambda-Funktion in Python (mit Beispielen). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!