Heim > Artikel > Backend-Entwicklung > So verwenden Sie Lambda-Funktionen in Python
Lambda-Funktionen in Python sind eine leistungsstarke Möglichkeit, kleine, anonyme Funktionen im laufenden Betrieb zu erstellen. Diese Funktionen werden typischerweise für kurze, einfache Operationen verwendet, bei denen der Aufwand einer vollständigen Funktionsdefinition unnötig wäre.
Während herkömmliche Funktionen mit dem Schlüsselwort def definiert werden, werden Lambda-Funktionen mit dem Schlüsselwort lambda definiert und direkt in Codezeilen integriert. Insbesondere werden sie häufig als Argumente für integrierte Funktionen verwendet. Sie ermöglichen es Entwicklern, sauberen und lesbaren Code zu schreiben, da keine temporären Funktionsdefinitionen erforderlich sind.
In diesem Artikel besprechen wir, was Lambda-Funktionen tun und welche Syntax sie haben. Wir stellen auch einige Beispiele und Best Practices für deren Verwendung bereit und diskutieren ihre Vor- und Nachteile.
Lambda-Funktionen sind seit Version 2.0 Teil von Python, daher benötigen Sie:
In diesem Tutorial erfahren Sie, wie Sie Lambda-Funktionen mit der Bibliothek Pandas verwenden: einer schnellen, leistungsstarken, flexiblen und benutzerfreundlichen Open-Source-Bibliothek zur Datenanalyse und -manipulation. Wenn Sie es nicht installiert haben, führen Sie Folgendes aus:
pip install pandas
Zuerst definieren wir die Syntax, die Entwickler zum Erstellen von Lambda-Funktionen verwenden müssen.
Eine Lambda-Funktion wird mit dem Schlüsselwort Lambda definiert, gefolgt von einem oder mehreren Argumenten und einem Ausdruck:
lambda arguments: expression
Stellen wir uns vor, wir möchten eine Lambda-Funktion erstellen, die zwei Zahlen addiert:
add = lambda x, y: x + y
Führen Sie Folgendes aus:
result = add(3, 5) print(result)
Das ergibt:
8
Wir haben eine anonyme Funktion erstellt, die zwei Argumente akzeptiert, x und y. Im Gegensatz zu herkömmlichen Funktionen haben Lambda-Funktionen keinen Namen: Deshalb sagen wir, dass sie „anonym“ sind.
Außerdem verwenden wir nicht die Return-Anweisung, wie wir es in regulären Python-Funktionen tun. Wir können die Lambda-Funktion also nach Belieben verwenden: Sie kann gedruckt werden (wie wir es in diesem Fall getan haben), in einer Variablen gespeichert usw.
Sehen wir uns nun einige häufige Anwendungsfälle für Lambda-Funktionen an.
Lambda-Funktionen werden insbesondere in Situationen verwendet, in denen wir eine vorübergehend einfache Funktion benötigen. Insbesondere werden sie häufig als Argumente für Funktionen höherer Ordnung verwendet.
Sehen wir uns einige praktische Beispiele an.
map() ist eine integrierte Funktion, die eine bestimmte Funktion auf jedes Element einer Iterable anwendet und ein Kartenobjekt mit den Ergebnissen zurückgibt.
Angenommen, wir möchten die Quadratwurzeln jeder Zahl in einer Liste berechnen. Wir könnten eine Lambda-Funktion wie folgt verwenden:
pip install pandas
Das ergibt:
lambda arguments: expression
Wir haben jetzt eine Liste mit den Quadratwurzeln der Anfangszahlen.
Wie wir sehen, vereinfacht dies die Prozesse erheblich, um Funktionen im laufenden Betrieb zu nutzen, die später nicht wiederverwendet werden müssen.
Angenommen, wir haben eine Liste mit Zahlen und möchten gerade Zahlen filtern.
Wir können eine Lambda-Funktion wie folgt verwenden:
add = lambda x, y: x + y
Das ergibt:
result = add(3, 5) print(result)
Die Funktion sorted() in Python gibt eine neue sortierte Liste aus den Elementen eines beliebigen Iterables zurück. Mithilfe von Lambda-Funktionen können wir bestimmte Filterkriterien auf diese Listen anwenden.
Angenommen, wir haben eine Liste von Punkten in zwei Dimensionen: (x,y). Wir möchten eine Liste erstellen, die die y-Werte inkrementell sortiert.
Wir können es so machen:
8
Und wir bekommen:
# Define the list of numbers numbers = [1, 2, 3, 4] # Calculate square values and print results squared = list(map(lambda x: x ** 2, numbers)) print(squared)
Aufgrund ihrer Prägnanz können Lambda-Funktionen für spontane Berechnungen in Listenverständnisse eingebettet werden.
Angenommen, wir haben eine Liste mit Zahlen. Wir wollen:
So können wir das tun:
[1, 4, 9, 16]
Und wir erhalten:
# Create a list of numbers numbers = [1, 2, 3, 4] # Filter for even numbers and print results even = list(filter(lambda x: x % 2 == 0, numbers)) print(even)
Anhand der von uns untersuchten Beispiele wollen wir einige Vorteile der Verwendung von Lambda-Funktionen durchgehen:
Lassen Sie uns kurz einige Einschränkungen und Nachteile von Lambda-Funktionen in Python diskutieren:
Nachdem wir nun über einige Vor- und Nachteile nachgedacht haben, definieren wir einige Best Practices für die effektive Nutzung von Lambda-Funktionen:
In bestimmten Fällen können fortgeschrittenere Lambda-Funktionstechniken hilfreich sein.
Sehen wir uns einige Beispiele an.
Lambda-Funktionen können für komplexe Operationen verschachtelt werden.
Diese Technik ist in Szenarien nützlich, in denen Sie mehrere kleine Transformationen in einer Sequenz benötigen.
Angenommen, Sie möchten beispielsweise eine Funktion erstellen, die die Quadratwurzel einer Zahl berechnet und dann 1 addiert. So können Sie Lambda-Funktionen dazu verwenden:
pip install pandas
Sie erhalten:
lambda arguments: expression
Viele Python-Bibliotheken nutzen Lambda-Funktionen, um komplexe Datenverarbeitungsaufgaben zu vereinfachen.
Lambda-Funktionen können beispielsweise mit Pandas und NumPy verwendet werden, um die Datenmanipulation und -transformation zu vereinfachen.
Angenommen, wir haben einen Datenrahmen mit zwei Spalten. Wir möchten eine weitere Spalte erstellen, die die Summe der beiden anderen darstellt. In diesem Fall können wir Lambda-Funktionen wie folgt verwenden:
add = lambda x, y: x + y
Und wir bekommen:
pip install pandas
Das war's für unsere kurze Tour durch Lambda-Funktionen in Python!
In diesem Artikel haben wir gesehen, wie man Lambda-Funktionen in Python verwendet, haben ihre Vor- und Nachteile untersucht, einige Best Practices vorgestellt und einige fortgeschrittene Anwendungsfälle angesprochen.
Viel Spaß beim Codieren!
P.S. Wenn Sie Python-Beiträge lesen möchten, sobald sie veröffentlicht werden, abonnieren Sie unseren Python Wizardry-Newsletter und verpassen Sie keinen einzigen Beitrag!
Das obige ist der detaillierte Inhalt vonSo verwenden Sie Lambda-Funktionen in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!