Erstellen Sie __init__.py
Datei im Test-Verzeichnis:
Weil die __init__.py
Dateien erforderlich sind, damit Python die Verzeichnisse als enthaltende Pakete behandeln.
parent/
child1/
__init__.py
file1.py
child2/
__init__.py
file2.py
Aus dem Fehler:
Wenn die child2/file2.py
Datei direkt ausgeführt werden. Sie können nicht auf child1/file1.py
von child2/file2.py
zugreifen, da nur aus dem übergeordneten Verzeichnis auf das Kind zugreifen kann.
Wenn eine Ordnerstruktur wie:
parent/
child1/
__init__.py
file1.py
child2/
__init__.py
file2.py
file3.py
Wenn wir die file3.py
Datei ausführen. Kann child1/file1.py
, child2/file2.py
in file3.py
zugreifen, da es vom übergeordneten Verzeichnis ausgeführt wird.
Wenn wir child1/file1
von child2/file2.py
zugreifen müssen, brauchen wir das übergeordnete Verzeichnis setzen:
Durch diese unter Befehl ausführen wir es erreichen können ...
PYTHONPATH=. python child2/file2.py
PYTHONPATH=.
Es bezieht sich die übergeordnete Pfad . Dann läuft child2/file2.py
Datei aus dem Shell
Haben Sie einen relativen Import wie aus '..core import file1' versucht? –