Importieren von Modulen aus Unterverzeichnissen in Python
-
Importieren eines Moduls aus dem Unterverzeichnis in Python mit
__init__.py
-
Importieren eines Moduls aus dem Unterverzeichnis in Python mit der Methode
sys.path.insert()
In diesem Tutorial werden die verschiedenen Methoden zum Importieren eines Moduls aus einem Unterverzeichnis in Python erklärt. Angenommen, wir haben eine Datei in einem Unterverzeichnis des Projektverzeichnisses, und wir möchten die Datei importieren und ihre Methoden in unserem Code verwenden.
Wir können die Datei aus einem Unterverzeichnis in Python importieren, indem wir das Unterverzeichnis als Paket deklarieren. So wird es von Python als Paket behandelt, und wir können die Datei für dieses Verzeichnis importieren. Die andere Möglichkeit besteht darin, das Unterverzeichnis zur Umgebungsvariablen PYTHONPATH
hinzuzufügen, und es ist der Pfad, in dem Python standardmäßig nach den zu importierenden Paketen sucht. Die Details und die Verwendung dieser Methoden werden im Folgenden beschrieben.
Importieren eines Moduls aus dem Unterverzeichnis in Python mit __init__.py
Die Datei __init__.py
wird verwendet, um ein Verzeichnis als Paket zu deklarieren. Die Datei __init__.py
verhindert, dass Python ein Verzeichnis mit demselben Namen vermischt. Um also zwischen einem einfachen Verzeichnis und einem Paket zu unterscheiden, wird die Datei __init__.py
verwendet.
Die Datei __init__.py
kann leer sein, oder sie kann den Code enthalten, der zur Initialisierung des Pakets benötigt wird, sowie eine Liste der Module, die mit dem Paket importiert werden müssen; diese Liste wird durch die Variable __all__
repräsentiert.
Sobald die Datei __init__.py
zum Unterverzeichnis hinzugefügt wurde, können wir die Datei aus dem Unterverzeichnis importieren, wie im folgenden Beispielcode gezeigt:
import subdirectory.myfile
Importieren eines Moduls aus dem Unterverzeichnis in Python mit der Methode sys.path.insert()
Die alternative Methode, eine Datei aus dem Unterverzeichnis zu importieren, besteht darin, das Verzeichnis zum PYTHONPATH
hinzuzufügen. Der PYTHONPATH
ist die Umgebungsvariable, die den Pfad der Verzeichnisse enthält, die Python durchsucht, um die Pakete zu importieren.
Wenn wir also das Unterverzeichnis mit der Methode sys.path.insert()
zum PYTHONPATH
hinzufügen, wird Python zuerst die Verzeichnisse im PYTHONPATH
durchsuchen und es von dort importieren.
Die Methode sys.path.insert()
fügt das Unterverzeichnis in die Variable sys.path
oder PYTHONPATH
ein, das die Liste der Verzeichnisse enthält, die Python durchsuchen wird, um das gewünschte Modul zu importieren.
Der folgende Beispielcode demonstriert, wie Sie die Methode sys.path.insert()
verwenden, um eine Datei aus dem Unterverzeichnis zu importieren:
import myfile
import sys
sys.path.insert(0, "./subdirectory")
Verwandter Artikel - Python Import
- Python-Zirkularimport
- Importieren alle Funktionen aus einer Datei in Python
- Python Import aller Module in einem Verzeichnis
- Importieren einer Variable aus einer anderen Datei in Python
- Importieren eines Moduls aus einem vollständigen Dateipfad in Python
- Importieren von Modulen aus dem übergeordneten Verzeichnis in Python