Python wird in einem lokalen Verzeichnis installiert.
Mein Verzeichnisbaum sieht wie folgt aus:
(local directory)/site-packages/toolkit/interface.py
Mein Code befindet sich hier:
(local directory)/site-packages/toolkit/examples/mountain.py
Um das Beispiel auszuführen, schreibe ich python mountain.py
, und im Code habe ich:
from toolkit.interface import interface
Und ich bekomme den Fehler:
Traceback (most recent call last):
File "mountain.py", line 28, in ?
from toolkit.interface import interface
ImportError: No module named toolkit.interface
Ich habe bereits sys.path
überprüft und dort habe ich das Verzeichnis /site-packages
. Außerdem habe ich die Datei __init__.py.bin
im Toolkit-Ordner, um Python zu zeigen, dass es sich um ein Paket handelt. Ich habe auch eine __init__.py.bin
im examples Verzeichnis.
Ich weiß nicht, warum Python die Datei nicht finden kann, wenn sie in sys.path
liegt. Hat jemand eine Idee? Kann es ein Berechtigungsproblem sein? Brauche ich eine Ausführungserlaubnis?
Ausgehend von Ihren Kommentaren zum Beitrag von orip's, vermute ich, dass dies der Fall war:
__init__.py
unter Windows bearbeitet.__init__.py
(jetzt __init__.py.bin
genannt) bedeutet, dass Python Toolkit nicht als Paket versteht.__init__.py
im entsprechenden Verzeichnis und alles funktioniert... ?