Beim Bearbeiten von Dateien aus verschiedenen Ordnern kann es schwierig sein, Funktionen aus einer Datei in eine andere zu importieren. Dies tritt in verschiedenen Verzeichnisstrukturen auf, die häufig verschachtelte Ordner und mehrere Dateien umfassen.
Betrachten Sie die folgende Verzeichnisstruktur:
application ├── app │ └── folder │ └── file.py └── app2 └── some_folder └── some_file.py
Wie kann man in diesem Szenario eine Funktion importieren (z. B. func_name) in file.py aus some_file.py definiert? Auch wenn die intuitive Methode „From application.app.folder.file import func_name“ plausibel erscheint, führt sie häufig zu Fehlern.
Standardmäßig untersucht Python nur das Verzeichnis, in dem sich das Einstiegspunktskript befindet (dasjenige, das ausgeführt wird). befindet sich und der sys.path, der den Pfad zur Paketinstallation enthält. Wenn sich die erforderliche Datei außerhalb dieser Speicherorte befindet, schlägt der Import fehl.
Es ist jedoch möglich, den Suchpfad von Python dynamisch zu erweitern:
# some_file.py import sys # appending search path sys.path.insert(1, '/path/to/application/app/folder') # importing file and function import file func_name()
Indem Sie das Verzeichnis mit der Datei „file.py“ einfügen Nachdem Sie den Suchpfad eingegeben haben, kann Python ihn nun erfolgreich importieren. Dieser Ansatz ermöglicht eine flexible Handhabung von Dateien über verschiedene Verzeichnisse hinweg und ist somit eine wertvolle Lösung bei der Arbeit mit getrennten Dateistrukturen.
Das obige ist der detaillierte Inhalt vonWie kann ich Funktionen aus separaten Verzeichnissen in Python importieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!