Heim  >  Artikel  >  Backend-Entwicklung  >  Namespaces und Bereiche in Python

Namespaces und Bereiche in Python

青灯夜游
青灯夜游Original
2019-02-14 16:32:482053Durchsuche

In Python verfügt jedes Paket, Modul, jede Klasse, jede Funktion und jede Methodenfunktion über einen „Namespace“, in dem Variablennamen aufgelöst werden. Der folgende Artikel stellt Ihnen den Namespace und den Bereich in Python vor. Ich hoffe, dass er für Sie hilfreich ist.

Namespaces und Bereiche in Python

Was ist ein Namespace:

Ein Namespace ist ein System, das verwendet wird, um sicherzustellen, dass ein Programm alle Namen sind eindeutig und können ohne Konflikte verwendet werden. Mehrere Namespaces können denselben Namen verwenden und ihn verschiedenen Objekten zuordnen. [Video-Tutorial-Empfehlung: Python-Tutorial]

Nehmen Sie zum Beispiel die Verzeichnisdateisystemstruktur in einem Computer. Es versteht sich von selbst, dass man mehrere Verzeichnisse haben kann und jedes Verzeichnis eine Datei mit demselben Namen haben kann. Man kann jedoch eine Datei leiten, indem man ihren absoluten Pfad angibt.

Namespaces in Python werden als Python-Wörterbücher implementiert, was bedeutet, dass es sich um eine Zuordnung von Namen (Schlüsseln) zu Objekten (Werten) handelt. Benutzer müssen dies nicht wissen, um Python-Programme zu schreiben und Namespaces zu verwenden.

Typen von Namespaces:

Lokaler Namespace: Dieser Namespace enthält lokale Namen innerhalb von Funktionen. Dieser Namespace wird beim Aufruf einer Funktion erstellt und bleibt nur bestehen, bis die Funktion zurückkehrt.

Globaler Namensraum: Dieser Namensraum enthält die Namen verschiedener importierter Module, die Sie in Ihrem Projekt verwenden. Es wird erstellt, wenn das Modul in das Projekt eingebunden wird, und dauert bis zum Ende des Skripts.

Integrierter Namespace: Dieser Namespace enthält integrierte Funktions- und integrierte Ausnahmenamen.

Namespaces und Bereiche in Python

Namespace-Lebensdauer:

Die Lebensdauer eines Namespace hängt vom Umfang des Objekts ab , Der Lebenszyklus des Namespace endet. Daher kann auf Objekte des inneren Namensraums nicht vom äußeren Namensraum aus zugegriffen werden.

Was ist Umfang?

Namespace kann uns helfen, alle Namen im Programm eindeutig zu identifizieren. Dies bedeutet jedoch nicht, dass wir überall Variablennamen verwenden können. Der Name hat auch einen Gültigkeitsbereich, der die Teile des Programms definiert, die den Namen ohne Präfix verwenden können. Genau wie Namespaces gibt es in einem Programm mehrere Bereiche.

Ein Bereich bezieht sich auf einen Bereich eines Programms, in dem direkt, also ohne Verwendung eines Namespace-Präfixes, auf einen Namespace zugegriffen werden kann. Mit anderen Worten: Der Gültigkeitsbereich eines Namens ist ein Bereich des Programms, in dem der Name explizit verwendet werden kann, beispielsweise innerhalb einer Funktion. Der Namespace eines

-Namens entspricht seinem Geltungsbereich. Bereiche sind statisch definiert, werden aber dynamisch verwendet.

Im Folgenden finden Sie eine Liste einiger Bereiche, die während der Programmausführung vorhanden sein können:

● Lokaler Bereich: Dies ist der innerste Bereich und enthält die Liste der in der aktuellen Funktion verfügbaren lokalen Namen.

● Geltungsbereich aller einschließenden Funktionen: Suchnamen beginnen beim nächstgelegenen einschließenden Geltungsbereich und bewegen sich nach außen.

● Bereich auf Modulebene, der alle globalen Namen im aktuellen Modul enthält.

● Der äußerste Bereich, der alle integrierten Namenslisten enthält. Durchsuchen Sie abschließend diesen Bereich nach dem Namen, auf den Sie verwiesen haben.

Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, er wird für das Studium aller hilfreich sein. Weitere spannende Inhalte finden Sie in den entsprechenden Tutorial-Kolumnen auf der chinesischen PHP-Website! ! !

Das obige ist der detaillierte Inhalt vonNamespaces und Bereiche in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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