Heim > Backend-Entwicklung > Python-Tutorial > Was importiert die Anweisung „import *' tatsächlich in Python?

Was importiert die Anweisung „import *' tatsächlich in Python?

Linda Hamilton
Freigeben: 2024-11-16 06:33:03
Original
671 Leute haben es durchsucht

What Does the `import *` Statement Actually Import in Python?

Was die Import *-Anweisung importiert

In Python importiert die import *-Anweisung alle Objekte aus dem angegebenen Modul in das aktuelle Modul. Dies ermöglicht die Verwendung exportierter Symbole (Variablen, Klassen, Methoden usw.) aus dem importierten Modul, ohne ihnen den Modulnamen voranzustellen.

Beispiel:

>>> from math import *
>>> pi
3.141592653589793
>>> sin(pi/2)
1.0
Nach dem Login kopieren

Vergleich mit expliziten Importen:

Von der Verwendung von Import * wird jedoch generell abgeraten aufgrund von:

  • Namespace-Kollisionen: Importierte Objekte können vorhandene Symbole im aktuellen Modul überschreiben.
  • Ineffizienz: Das Importieren vieler Objekte kann Verlangsamen Sie das Programm.
  • Mangelnde Dokumentation: Es wird nicht explizit dokumentiert Herkunft der importierten Objekte.

Stattdessen ist es besser:

  • Nur ​​bestimmte Objekte importieren:Verwenden Sie „from module import object“, um nur die zu importieren Erforderliche Objekte.
  • Importieren Sie das Modul mit seinem Namensraum:Verwenden Sie das Importmodul als Alias, um auf importierte Objekte zuzugreifen über den Modulnamen oder Alias.

Ausnahmen:

Einige Bibliotheken verfügen möglicherweise über spezielle Untermodule, die für den Import mit import * konzipiert sind. Beispielsweise enthält das Untermodul pygame.locals der Pygame-Bibliothek häufig verwendete Konstanten und Funktionen.

Importieren aus Untermodulen:

Der Import aus Untermodulen erfordert eine explizite Angabe Spezifikation, auch wenn import * innerhalb des Untermoduls verwendet wird. Beispielsweise importiert from urllib import * nicht alle Untermodule wie urllib.request.

Das obige ist der detaillierte Inhalt vonWas importiert die Anweisung „import *' tatsächlich in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage