


Was ist die Lambda-Funktion in Python und warum brauchen wir sie?
In diesem Artikel erfahren wir mehr über die Lambda-Funktion in Python und warum wir sie brauchen, und sehen uns einige praktische Beispiele für die Lambda-Funktion an.
Was ist die Lambda-Funktion in Python?
Lambda-Funktionen, oft „anonyme Funktionen“ genannt, sind die gleichen wie gewöhnliche Python-Funktionen, mit der Ausnahme, dass sie ohne Namen definiert werden können. Das Schlüsselwort >def wird zum Definieren gewöhnlicher Funktionen verwendet, während das Schlüsselwort lambda zum Definieren anonymer Funktionen verwendet wird. Sie sind jedoch auf einzeilige Ausdrücke beschränkt. Sie können wie reguläre Funktionen mehrere Argumente akzeptieren.
Grammatik
lambda arguments: expression
Nach dem Login kopieren
lambda arguments: expression
- Diese Funktion akzeptiert eine beliebige Anzahl von Eingaben, wertet jedoch nur einen Ausdruck aus und gibt ihn zurück.
- Lambda-Funktionen können überall dort eingesetzt werden, wo ein Funktionsobjekt benötigt wird.
- Sie müssen bedenken, dass Lambda-Funktionen syntaktisch auf einen einzelnen Ausdruck beschränkt sind.
- Neben anderen Arten von Ausdrücken in Funktionen hat es vielfältige Verwendungsmöglichkeiten in bestimmten Programmierbereichen.
- Eine Lambda-Funktion erfordert weniger Codezeilen als eine normale Python-Funktion, die mit dem Schlüsselwort
def geschrieben wurde. Dies ist jedoch nicht ganz richtig, da mit def definierte Funktionen in einer Zeile definiert werden können. Allerdings werden def -Funktionen normalerweise in mehr als einer Zeile definiert.
- Sie werden normalerweise verwendet, wenn eine kürzere (temporäre) Funktion erforderlich ist, normalerweise innerhalb einer anderen Funktion (z. B. einem Filter, einer Zuordnung oder einer Reduzierung).
- Sie können eine Funktion definieren und sie direkt am Ende der Definition mithilfe einer Lambda-Funktion aufrufen. Dies ist mit Def-Funktionen nicht möglich.
Beispiel
# input string
inputString = 'TUTORIALSpoint'
# converting the given input string to lowercase and reversing it
# with the lambda function
reverse_lower = lambda inputString: inputString.lower()[::-1]
print(reverse_lower(inputString))
Nach dem Login kopieren
Ausgabe# input string inputString = 'TUTORIALSpoint' # converting the given input string to lowercase and reversing it # with the lambda function reverse_lower = lambda inputString: inputString.lower()[::-1] print(reverse_lower(inputString))
Bei der Ausführung generiert das obige Programm die folgende Ausgabe:
tniopslairotut
Beispiel
# Formatting number to 2 decimal places using lambda function
formatNum = lambda n: f"{n:e}" if isinstance(n, int) else f"{n:,.2f}"
print("Int formatting:", formatNum(1000))
print("float formatting:", formatNum(5555.4895412))
Nach dem Login kopieren
Ausgabe# Formatting number to 2 decimal places using lambda function formatNum = lambda n: f"{n:e}" if isinstance(n, int) else f"{n:,.2f}" print("Int formatting:", formatNum(1000)) print("float formatting:", formatNum(5555.4895412))
Bei der Ausführung generiert das obige Programm die folgende Ausgabe:
Int formatting: 1.000000e+03 float formatting: 5,555.49
Beispiel
# creating a function that returns the square root of
# the number passed to it
def square(x):
return x*x
# using lambda function that returns the square root of
# the number passed
lambda_square = lambda x: x*x
# printing the square root of the number by passing the
# random number to the above-defined square function with the def keyword
print("Square of the number using the function with 'def' keyword:", square(4))
# printing the square root of the number by passing the
# random number to the above lambda_square function with lambda keyword
print("Square of the number using the function with 'lambda' keyword:", lambda_square(4))
Nach dem Login kopieren
Ausgabe# creating a function that returns the square root of # the number passed to it def square(x): return x*x # using lambda function that returns the square root of # the number passed lambda_square = lambda x: x*x # printing the square root of the number by passing the # random number to the above-defined square function with the def keyword print("Square of the number using the function with 'def' keyword:", square(4)) # printing the square root of the number by passing the # random number to the above lambda_square function with lambda keyword print("Square of the number using the function with 'lambda' keyword:", lambda_square(4))
Bei der Ausführung generiert das obige Programm die folgende Ausgabe:
Square of the number using the function with 'def' keyword: 16 Square of the number using the function with 'lambda' keyword: 16
square() und lambda_square() gleich und wie erwartet. Schauen wir uns dieses Beispiel genauer an und finden den Unterschied zwischen ihnen heraus -
Keine Lambda-Funktion | |
---|---|
Erlaubt eine beliebige Anzahl von Zeilen innerhalb eines Funktionsblocks. | |
Dies ist in Situationen nützlich, in denen mehrere Codezeilen erforderlich sind. | |
Wir können die Lesbarkeit verbessern, indem wir Kommentare und Funktionserklärungen verwenden. |
Beispiel
Verwenden Sie Lambda-Funktionen mit Listenverständnis
is_odd_list = [lambda arg=y: arg * 5 for y in range(1, 10)] # looping on each lambda function and calling the function # for getting the multiplied value for i in is_odd_list: print(i())
Bei der Ausführung generiert das obige Programm die folgende Ausgabe:
5 10 15 20 25 30 35 40 45
y das aktuelle Element in der Iteration ist). Später, in der for-Schleife, verwenden wir i(), um dasselbe Funktionsobjekt mit Standardparametern aufzurufen und den erforderlichen Wert zu erhalten. Daher enthält is_odd_list eine Liste von Lambda-Funktionsobjekten.
BeispielVerwenden Sie Lambda-Funktionen mit if-else-Bedingungen
# using lambda function to find the maximum number among both the numbers find_maximum = lambda x, y : x if(x > y) else y print(find_maximum(6, 3))
Bei der Ausführung generiert das obige Programm die folgende Ausgabe:
6
Verwenden Sie Lambda-Funktionen mit mehreren Anweisungen
inputList = [[5,2,8],[2, 9, 12],[10, 4, 2, 7]] # sorting the given each sublist using lambda function sorted_list = lambda k: (sorted(e) for e in k) # getting the second-largest element second_largest = lambda k, p : [x[len(x)-2] for x in p(k)] output = second_largest(inputList, sorted_list) # printing the second largest element print(output)
Bei der Ausführung generiert das obige Programm die folgende Ausgabe:
[5, 9, 7]
Beispiel
inputList = [3, 5, 10, 7, 24, 6, 1, 12, 8, 4]
# getting the even numbers from the input list
# using lambda and filter functions
evenList = list(filter(lambda n: (n % 2 == 0), inputList))
# priting the even numbers from the input list
print("Even numbers from the input list:", evenList)
Nach dem Login kopieren
AusgabeinputList = [3, 5, 10, 7, 24, 6, 1, 12, 8, 4] # getting the even numbers from the input list # using lambda and filter functions evenList = list(filter(lambda n: (n % 2 == 0), inputList)) # priting the even numbers from the input list print("Even numbers from the input list:", evenList)
Bei der Ausführung generiert das obige Programm die folgende Ausgabe:
Even numbers from the input list: [10, 24, 6, 12, 8, 4]
Pythons Funktion „map()“ akzeptiert eine Funktion und eine Liste als Parameter. Wenn Sie die Funktion mit einer Lambda-Funktion und einer Liste aufrufen, wird eine neue Liste mit allen Lambda-geänderten Elementen zurückgegeben, die die Funktion für jedes Element zurückgibt.
BeispielKonvertieren Sie alle Listenelemente mithilfe der Lambda- und Map()-Funktionen in Kleinbuchstaben.
# input list inputList = ['HELLO', 'TUTORIALSpoint', 'PyTHoN', 'codeS'] # converting all the input list elements to lowercase using lower() # with the lambda() and map() functions and returning the result list lowercaseList = list(map(lambda animal: animal.lower(), inputList)) # printing the resultant list print("Converting all the input list elements to lowercase:\n", lowercaseList)
Bei der Ausführung generiert das obige Programm die folgende Ausgabe:
Converting all the input list elements to lowercase: ['hello', 'tutorialspoint', 'python', 'codes']
In diesem Tutorial haben wir anhand vieler Beispiele ausführlich die Lambda-Funktion in Python kennengelernt. Wir haben auch den Unterschied zwischen Lambda-Funktionen und Def-Funktionen gelernt.
Das obige ist der detaillierte Inhalt vonWas ist die Lambda-Funktion in Python und warum brauchen wir sie?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Hadidb: Eine leichte, hochrangige skalierbare Python-Datenbank Hadidb (HadIDB) ist eine leichte Datenbank in Python mit einem hohen Maß an Skalierbarkeit. Installieren Sie HadIDB mithilfe der PIP -Installation: PipinstallHadIDB -Benutzerverwaltung erstellen Benutzer: createUser (), um einen neuen Benutzer zu erstellen. Die Authentication () -Methode authentifiziert die Identität des Benutzers. fromHadidb.operationImportUseruser_obj = user ("admin", "admin") user_obj.

Es ist unmöglich, das MongoDB -Passwort direkt über Navicat anzuzeigen, da es als Hash -Werte gespeichert ist. So rufen Sie verlorene Passwörter ab: 1. Passwörter zurücksetzen; 2. Überprüfen Sie die Konfigurationsdateien (können Hash -Werte enthalten). 3. Überprüfen Sie Codes (May Hardcode -Passwörter).

Sie können grundlegende Programmierkonzepte und Fähigkeiten von Python innerhalb von 2 Stunden lernen. 1. Lernen Sie Variablen und Datentypen, 2. Master Control Flow (bedingte Anweisungen und Schleifen), 3.. Verstehen Sie die Definition und Verwendung von Funktionen, 4. Beginnen Sie schnell mit der Python -Programmierung durch einfache Beispiele und Code -Snippets.

Die MySQL-Datenbankleistung Optimierungshandbuch In ressourcenintensiven Anwendungen spielt die MySQL-Datenbank eine entscheidende Rolle und ist für die Verwaltung massiver Transaktionen verantwortlich. Mit der Erweiterung der Anwendung werden jedoch die Datenbankleistung Engpässe häufig zu einer Einschränkung. In diesem Artikel werden eine Reihe effektiver Strategien zur Leistungsoptimierung von MySQL -Leistung untersucht, um sicherzustellen, dass Ihre Anwendung unter hohen Lasten effizient und reaktionsschnell bleibt. Wir werden tatsächliche Fälle kombinieren, um eingehende Schlüsseltechnologien wie Indexierung, Abfrageoptimierung, Datenbankdesign und Caching zu erklären. 1. Das Design der Datenbankarchitektur und die optimierte Datenbankarchitektur sind der Eckpfeiler der MySQL -Leistungsoptimierung. Hier sind einige Kernprinzipien: Die Auswahl des richtigen Datentyps und die Auswahl des kleinsten Datentyps, der den Anforderungen entspricht, kann nicht nur Speicherplatz speichern, sondern auch die Datenverarbeitungsgeschwindigkeit verbessern.

Python wird in den Bereichen Webentwicklung, Datenwissenschaft, maschinelles Lernen, Automatisierung und Skripten häufig verwendet. 1) In der Webentwicklung vereinfachen Django und Flask Frameworks den Entwicklungsprozess. 2) In den Bereichen Datenwissenschaft und maschinelles Lernen bieten Numpy-, Pandas-, Scikit-Learn- und TensorFlow-Bibliotheken eine starke Unterstützung. 3) In Bezug auf Automatisierung und Skript ist Python für Aufgaben wie automatisiertes Test und Systemmanagement geeignet.

Als Datenprofi müssen Sie große Datenmengen aus verschiedenen Quellen verarbeiten. Dies kann Herausforderungen für das Datenmanagement und die Analyse darstellen. Glücklicherweise können zwei AWS -Dienste helfen: AWS -Kleber und Amazon Athena.

Nein, MySQL kann keine direkt zu SQL Server herstellen. Sie können jedoch die folgenden Methoden verwenden, um die Dateninteraktion zu implementieren: Verwenden Sie Middleware: Exportieren Sie Daten von MySQL in das Zwischenformat und importieren sie dann über Middleware in SQL Server. Verwenden von Datenbank -Linker: Business -Tools bieten eine freundlichere Oberfläche und erweiterte Funktionen, die im Wesentlichen weiterhin über Middleware implementiert werden.

Zu den Schritten zum Starten eines Redis -Servers gehören: Installieren von Redis gemäß dem Betriebssystem. Starten Sie den Redis-Dienst über Redis-Server (Linux/macOS) oder redis-server.exe (Windows). Verwenden Sie den Befehl redis-cli ping (linux/macOS) oder redis-cli.exe ping (Windows), um den Dienststatus zu überprüfen. Verwenden Sie einen Redis-Client wie Redis-Cli, Python oder Node.js, um auf den Server zuzugreifen.
