Python __import__() Funktion
Python3 integrierte Funktionen
__import__()Es ist eine in Python integrierte Funktion zum dynamischen Importieren von Modulen.
__import__()JaimportEs ist die zugrunde liegende Implementierung der import-Anweisung und ermöglicht das dynamische Importieren von Modulen zur Laufzeit. Es ist sehr nützlich für Szenarien wie Plug-in-Systeme und Lazy Loading.
Wortdefinitionen: __import__ 是 Python 的内置导入函数。
Grundlegende Syntax und Parameter
Syntaxformat
__import__(name, globals=None, locals=None, fromlist=(), level=0)
Parameterbeschreibung
- Parametername:
- Typ: String
- Beschreibung: Der Name des zu importierenden Moduls.
- Parameter fromlist(optional):
- Typ: Tupel
- Beschreibung: Eine Liste von Untermodulen oder Attributen, die aus dem Modul importiert werden sollen.
Funktionsbeschreibung
- Rückgabewert: Gibt das importierte Modulobjekt zurück.
Beispiele
Beispiel 1: Grundlegende Verwendung
Beispiel
# Modul dynamisch importieren
os = __import__('os')
print(os.getcwd()) # Ausgabe: aktuelles Arbeitsverzeichnis
# Submodul importieren
requests = __import__('collections', fromlist=['Counter'])
print(requests.Counter) # Ausgabe: <class 'collections.Counter'>
os = __import__('os')
print(os.getcwd()) # Ausgabe: aktuelles Arbeitsverzeichnis
# Submodul importieren
requests = __import__('collections', fromlist=['Counter'])
print(requests.Counter) # Ausgabe: <class 'collections.Counter'>
Ausgabe:
Wege zum Importieren von Modulen.
Beispiel 2: Dynamischer Import
Beispiel
# Modul anhand einer Zeichenkette importieren
module_name = "json"
mod = __import__(module_name)
print(mod.dumps({"key": "value"})) # Ausgabe: {"key": "value"}
# Mehrere Module dynamisch importieren
modules = ['math', 'random', 'datetime']
for name in modules:
mod = __import__(name)
print(f"{name}: {mod.__name__}")
# Lazy Import (Bedarfsladen)
def get_module(mod_name):
return __import__(mod_name)
math_mod = get_module('math')
print(math_mod.sqrt(16)) # Ausgabe: 4.0
module_name = "json"
mod = __import__(module_name)
print(mod.dumps({"key": "value"})) # Ausgabe: {"key": "value"}
# Mehrere Module dynamisch importieren
modules = ['math', 'random', 'datetime']
for name in modules:
mod = __import__(name)
print(f"{name}: {mod.__name__}")
# Lazy Import (Bedarfsladen)
def get_module(mod_name):
return __import__(mod_name)
math_mod = get_module('math')
print(math_mod.sqrt(16)) # Ausgabe: 4.0
Ausgabe:
Dynamischer Import hat vielfältige Anwendungen in der Praxis.
__import__()Es ist der Kern des dynamischen Importmechanismus von Python.
Python3 integrierte Funktionen
Andere Erweiterungen