Heim > Backend-Entwicklung > Python-Tutorial > Detaillierte Erklärung der Python-Verschlüsse

Detaillierte Erklärung der Python-Verschlüsse

高洛峰
Freigeben: 2016-10-18 14:53:06
Original
1496 Leute haben es durchsucht

Ich glaube, dass die meisten Studenten, die Programmieren studiert haben, mit dem Wort „Abschluss“ vertraut sind, aber manchmal ist es immer noch schwer zu verstehen. Schauen wir uns zunächst die Definition an:

Ein Abschluss ist eine Entität, die aus einer Funktion und der zugehörigen Referenzumgebung besteht. In den Referenzressourcen gibt es beispielsweise eine solche Definition: Wenn Sie tiefe Einschränkungen implementieren, müssen Sie etwas erstellen, das die Referenzumgebung explizit darstellen und mit den relevanten Unterprogrammen bündeln kann, wodurch

das resultierende Ganze entsteht Schließung genannt.

Python-Schließung (Schließung) ist eigentlich keine sehr komplizierte Sache.

Laienhaft ausgedrückt: Wenn in einer internen Funktion auf eine Variable im externen Bereich (aber nicht im globalen Bereich) verwiesen wird, dann wird die interne Funktion als Abschluss betrachtet. Es ist nichts weiter als eine „innere“ Funktion, auf die durch einen Namen (Variable) verwiesen wird, und dieser Name (Variable) ist eine lokale Variable für die „äußere“ Funktion, die sie enthält.

Nachdem Sie dies gelesen haben, verstehen Sie vielleicht immer noch nicht, was ein Abschluss ist. Es spielt keine Rolle, nachdem Sie das folgende kleine Beispiel gelesen haben.

#!/usr/bin/env python
# programming=utf-8
# http://www.pythontab.com

#Definieren Sie eine Funktion
def plus(number):

#Definieren Sie eine andere Funktion innerhalb der Funktion. Tatsächlich wird die darin enthaltene Funktion als Abschluss betrachtet
def plus_in(number_in):
#Drucken Sie hier die Variable number_in aus damit jeder klarer wissen kann, welche Variable übergeben wird
print str(number_in) "rn"

return number number_in
#Tatsächlich wird hier das Ergebnis des Abschlusses zurückgegeben
return plus_in


#Weisen Sie der Plusfunktion einen Wert zu, diese 20 ist für die Parameternummer
v1=plus(20)

print v1(100) #Hinweis dass 100 hier tatsächlich für den Parameter number_in steht


Laufergebnis:

100

120

Hinweis: 100 ist das von print gedruckte Ergebnis str(number_in) "rn"




Verwandte Etiketten:
Quelle:php.cn
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage