Wie behebe ich ImportErrors beim Importieren von Modulen aus Unterverzeichnissen in Python?

Patricia Arquette
Freigeben: 2024-11-14 21:42:02
Original
186 Leute haben es durchsucht

How to Resolve ImportErrors When Importing Modules from Subdirectories in Python?

Eine Datei aus einem Unterverzeichnis importieren: ImportErrors beheben

In Python kann das Importieren von Modulen aus Unterverzeichnissen zu ImportErrors führen. Stellen Sie sich das folgende Szenario vor:

Projektstruktur:

  • /project/tester.py
  • /project/lib/BoxTime.py

Importieren Versuch:

import lib.BoxTime
Nach dem Login kopieren

Fehler:

Traceback (most recent call last):
  File "./tester.py", line 3, in <module>
    import lib.BoxTime
ImportError: No module named lib.BoxTime
Nach dem Login kopieren

Lösung:

Laut den Python-Paketen In der Dokumentation (Abschnitt 6.4) tritt dieser Fehler auf, weil Python das Verzeichnis /project/lib im Python-Pfad nicht finden kann. Um dieses Problem zu beheben, müssen Sie eine leere Datei mit dem Namen __init__.py zum Verzeichnis /project/lib hinzufügen.

Diese Datei __init__.py dient als Indikator dafür, dass das Verzeichnis als Paket behandelt werden sollte. Nach dem Hinzufügen fügt Python /project/lib in den Pfad ein, sodass Sie BoxTime mit lib.BoxTime oder lib.BoxTime als BT importieren können.

Das obige ist der detaillierte Inhalt vonWie behebe ich ImportErrors beim Importieren von Modulen aus Unterverzeichnissen 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