Wenn Sie versuchen, Module aus verschiedenen Unterpaketen innerhalb einer Verzeichnisstruktur zu importieren, kann die Meldung „Versuchter relativer Import in nicht“ auftreten -Paket"-Fehler. Dieses Problem entsteht durch die Ausführung des Moduls als Hauptmodul, das relative Importe so behandelt, als ob sich das Modul auf der obersten Ebene befände.
Um dieses Problem zu beheben, stellen Sie sicher, dass das Modul nicht als Hauptmodul ausgeführt wird. In Python 2.6 und höher können Sie das Attribut package verwenden, um die Position des Moduls in der Pakethierarchie zu bestimmen und relative Importe entsprechend aufzulösen. Weitere Informationen zu dieser Änderung finden Sie in PEP 366.
Das Paket-Attribut bietet eine sauberere Lösung als sys.path-Manipulations-Hacks. Es ermöglicht Ihnen, Module relativ zum Hauptmodul zu importieren, ähnlich dem in PEP 366 beschriebenen Verhalten.
Das obige ist der detaillierte Inhalt vonWie führe ich relative Importe in Python durch und vermeide den Fehler „Versuchter relativer Import in Nicht-Paket'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!