⊗pyPmFnIFN 22 of 129 menu

Nuancen beim Arbeiten mit inneren Funktionen in Python

In Python kann es nicht nur verschachtelte Funktionen geben, sondern eine Funktion kann auch eine andere zurückgeben. Zum Beispiel, lassen Sie die Funktion outer den Quellcode der Funktion inner als Ergebnis zurückgeben:

def outer(): def inner(): return '+++' return inner

Schreiben wir den Aufruf von outer in die Variable res:

res = outer() print(res)

Nach der Ausführung des Codes wird ein Objekt mit der Funktion ausgegeben:

<function outer.<locals>.inner at 0x000001564A212B90>

Wenn man die Variable res jedoch mit runden Klammern aufruft, wird die Nachricht '+++' zurückgegeben:

print(res()) # gibt '+++' aus

Man kann den Code so umschreiben, dass in res outer mit zwei runden Klammern geschrieben wird - um sich selbst und die Funktion inner aufzurufen. Daraus folgt, dass man zusätzliche runde Klammern rechts von der äußeren Funktion in der Anzahl der in ihr verschachtelten Funktionen schreiben kann:

res = outer()() print(res) # gibt '+++' aus

Gegeben ist der folgende Code:

def outer(): def inner(num): return num + 2 return inner res = outer()(3) print(res)

Sagen Sie, was in der Konsole ausgegeben wird.

Gegeben ist der folgende Code:

def outer(): def inner(txt): return 'hello, ' + txt return inner res = outer() print(res)

Sagen Sie, was in der Konsole ausgegeben wird.

Deutsch
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wir verwenden Cookies für den Betrieb der Website, Analyse und Personalisierung. Die Datenverarbeitung erfolgt gemäß der Datenschutzerklärung.
alle akzeptieren anpassen ablehnen