Heim Backend-Entwicklung Python-Tutorial Was ist eine anonyme Funktion? Welchen Nutzen haben anonyme Python-Funktionen?

Was ist eine anonyme Funktion? Welchen Nutzen haben anonyme Python-Funktionen?

Aug 17, 2018 pm 05:54 PM
匿名函数

Wenn wir eine Funktion übergeben, müssen wir die Funktion manchmal nicht explizit definieren. Es ist bequemer, die anonyme Funktion direkt zu übergeben.

In Python gibt es begrenzte Unterstützung für anonyme Funktionen. Nehmen wir immer noch die Funktion map() als Beispiel: Bei der Berechnung von f(x)=x2 können Sie zusätzlich zur Definition einer Funktion von f(x) auch direkt eine anonyme Funktion übergeben:

>>> list(map(lambda x: x * x, [1, 2, 3, 4, 5, 6, 7, 8, 9]))
[1, 4, 9, 16, 25, 36, 49, 64, 81]
Nach dem Login kopieren

As Aus dem Vergleich ist ersichtlich, dass die anonyme Funktion Lambda x: x * x tatsächlich lautet:

def f(x):
    return x * x
Nach dem Login kopieren

Das Schlüsselwort Lambda repräsentiert eine anonyme Funktion und das x vor dem Doppelpunkt repräsentiert den Funktionsparameter.

Anonyme Funktionen haben eine Einschränkung, das heißt, sie können nur einen Ausdruck haben. Es ist nicht erforderlich, einen Rückgabewert zu schreiben.

Die Verwendung anonymer Funktionen bietet einen Vorteil, da die Funktion keinen Namen hat, sodass Sie sich keine Sorgen über Funktionsnamenkonflikte machen müssen. Darüber hinaus ist die anonyme Funktion auch ein Funktionsobjekt. Sie können die anonyme Funktion auch einer Variablen zuweisen und diese dann zum Aufrufen der Funktion verwenden:

>>> f = lambda x: x * x
>>> f
<function <lambda> at 0x101c6ef28>
>>> f(5)25
Nach dem Login kopieren

Ebenso können Sie die anonyme Funktion auch als zurückgeben Rückgabewert, wie zum Beispiel:

def build(x, y):
    return lambda: x * x + y * y
Nach dem Login kopieren

Kapselt Details zur Verbesserung der Sicherheit und Steuerbarkeit. Er wird häufig außerhalb von Funktionen im globalen Bereich verwendet, wodurch das Hinzufügen zu vieler Variablen und Funktionen zum globalen Bereich eingeschränkt wird.
Die Verwendung des Bereichs auf Blockebene im globalen Bereich kann das Problem verringern, dass Schließungen Speicher belegen, da kein Verweis auf die anonyme Funktion vorhanden ist und ihre Bereichskette sofort zerstört werden kann, solange die Funktion ausgeführt wird.

Imitiert den (privaten) Bereich auf Blockebene:

function box(){
    for(var i=0;i<5;i++){  //块级作用域(js无)
    }   
     var i //即便重新声明,也不会影响之前的值
    alert(i);//5
 }
box();
Nach dem Login kopieren


Das obige ist der detaillierte Inhalt vonWas ist eine anonyme Funktion? Welchen Nutzen haben anonyme Python-Funktionen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Verwendung und Eigenschaften anonymer C++-Funktionen Verwendung und Eigenschaften anonymer C++-Funktionen Apr 19, 2024 am 09:03 AM

Eine anonyme Funktion, auch Lambda-Ausdruck genannt, ist eine Funktion, die keinen Namen angibt und zur einmaligen Verwendung oder zur Übergabe eines Funktionszeigers verwendet wird. Zu den Funktionen gehören: Anonymität, einmalige Verwendung, Schließungen, Rückschluss auf den Rückgabetyp. In der Praxis wird es häufig zum Sortieren oder für andere einmalige Funktionsaufrufe verwendet.

Analyse anonymer Funktionsanwendungsszenarien in Golang-Funktionen Analyse anonymer Funktionsanwendungsszenarien in Golang-Funktionen May 16, 2023 pm 10:51 PM

Als moderne Programmiersprache verfügt Golang (auch bekannt als Go-Sprache) über viele leistungsstarke Funktionen. Unter diesen sind anonyme Funktionen ein sehr wichtiges Konzept in Golang und werden in verschiedenen Szenarien häufig verwendet. In diesem Artikel werden wir die Anwendungsszenarien anonymer Funktionen in Golang-Funktionen eingehend analysieren. Event-Handler Im Event-Handler ist die anonyme Funktion ein sehr praktisches und praktisches Werkzeug. Benutzerdefinierte Logik kann über eine anonyme Funktion an den Ereignishandler übergeben werden, z. B.: funcmain(){bt

Python-Lambda-Ausdrücke: abgekürzt, prägnant, kraftvoll Python-Lambda-Ausdrücke: abgekürzt, prägnant, kraftvoll Feb 19, 2024 pm 08:10 PM

PythonLambda-Ausdrücke sind ein leistungsstarkes und flexibles Tool zum Erstellen prägnanter, lesbarer und benutzerfreundlicher Codes. Sie eignen sich hervorragend zum schnellen Erstellen anonymer Funktionen, die als Argumente an andere Funktionen übergeben oder in Variablen gespeichert werden können. Die grundlegende Syntax eines Lambda-Ausdrucks lautet wie folgt: lambdaarguments:expression Der folgende Lambda-Ausdruck fügt beispielsweise zwei Zahlen hinzu: lambdax,y:x+y Dieser Lambda-Ausdruck kann wie folgt als Argument an eine andere Funktion übergeben werden: defsum( x ,y):returnx+yresult=sum(lambdax,y:x+y,1,2)In diesem Beispiel

Wie kann ich die anonymen Funktionen und Abschlüsse von PHP7 nutzen, um eine flexiblere Codelogikverarbeitung zu erreichen? Wie kann ich die anonymen Funktionen und Abschlüsse von PHP7 nutzen, um eine flexiblere Codelogikverarbeitung zu erreichen? Oct 21, 2023 am 10:21 AM

Wie kann ich die anonymen Funktionen und Abschlüsse von PHP7 nutzen, um eine flexiblere Codelogikverarbeitung zu erreichen? Vor PHP7 verwendeten wir häufig Funktionen, um einen bestimmten Teil der Logik zu kapseln, und riefen diese Funktionen dann im Code auf, um bestimmte Funktionen zu implementieren. Manchmal müssen wir jedoch möglicherweise einige temporäre Logikblöcke im Code definieren. Diese Logikblöcke müssen keine unabhängige Funktion erstellen, und gleichzeitig möchten wir nicht zu viele globale Variablen in den Code einführen. PHP7 führt anonyme Funktionen und Schließungen ein, die dieses Problem sehr gut lösen können. Eine anonyme Funktion ist eine Funktion ohne Namen

Können anonyme Golang-Funktionen mehrere Werte zurückgeben? Können anonyme Golang-Funktionen mehrere Werte zurückgeben? Apr 13, 2024 pm 04:09 PM

Ja, anonyme Funktionen in der Go-Sprache können mehrere Werte zurückgeben. Syntax: func(arg1,arg2,...,argN)(ret1,ret2,...,retM){//Funktionskörper}. Verwendung: Verwenden Sie den Operator :=, um den Rückgabewert zu erhalten; verwenden Sie das Schlüsselwort return, um mehrere Werte zurückzugeben.

Anonyme Funktionen in PHP8.0 Anonyme Funktionen in PHP8.0 May 14, 2023 am 08:31 AM

PHP8.0 ist die neueste Version der Programmiersprache PHP. Ein wichtiges Update sind Verbesserungen und Erweiterungen anonymer Funktionen. Eine anonyme Funktion (auch Abschluss genannt) ist ein besonderer Funktionstyp, der zur Laufzeit dynamisch erstellt und an andere Funktionen übergeben oder in einer Variablen gespeichert werden kann. In PHP sind anonyme Funktionen für fortgeschrittene Programmierung und Webentwicklung von entscheidender Bedeutung. PHP8.0 bietet einige neue Syntax und Funktionen, die anonyme Funktionen flexibler und benutzerfreundlicher machen. Einige der Aktualisierungen sind wie folgt: Typdeklarationen für Funktionsparameter in PHP8.0,

Wie werden anonyme Funktionen in Golang-Funktionen implementiert? Wie werden anonyme Funktionen in Golang-Funktionen implementiert? Jun 03, 2024 pm 07:09 PM

Anonyme Funktionen innerhalb von Funktionen in Go ermöglichen die Erstellung einmaliger Funktionen innerhalb eines Funktionskörpers, ohne diese explizit zu deklarieren. Sie werden definiert, indem das Schlüsselwort func verwendet und der Funktionsname weggelassen wird. Wird durch Abschlüsse implementiert, die den Funktionskörpercode und Verweise auf alle lokalen Variablen in der Funktion enthalten, die die anonyme Funktion enthält. Beispielsweise kann eine anonyme Funktion in der Funktion sort.Slice verwendet werden, um ein Segment von Ganzzahlen zu sortieren.

Python-Lambda-Ausdrücke: Das Programmieren einfacher machen Python-Lambda-Ausdrücke: Das Programmieren einfacher machen Feb 19, 2024 pm 09:54 PM

Ein Python-Lambda-Ausdruck ist eine kleine anonyme Funktion, die einen Ausdruck in einer Variablen speichert und seinen Wert zurückgibt. Lambda-Ausdrücke werden oft verwendet, um einfache Aufgaben auszuführen, die durch das Schreiben einer separaten Funktion erledigt werden können, aber Lambda-Ausdrücke können den Code prägnanter und lesbarer machen. Die Syntax eines Lambda-Ausdrucks lautet wie folgt: lambdaarguments: expressionarguments ist die vom Lambda-Ausdruck empfangene Parameterliste, und expression ist der Hauptteil des Lambda-Ausdrucks, der den Code enthält, der ausgeführt werden muss. Der folgende Lambda-Ausdruck addiert beispielsweise zwei Zahlen und gibt deren Summe zurück: lambdax,

See all articles