Python wird in einem lokalen Verzeichnis installiert.
Mein Verzeichnisbaum sieht folgendermaßen aus:
(local directory)/site-packages/toolkit/interface.py
Mein Code ist hier drin:
(local directory)/site-packages/toolkit/examples/mountain.py
Um das Beispiel auszuführen, schreibe ich python mountain.py
und in den Code, den ich habe:
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 geprüft sys.path
und dort habe ich das Verzeichnis /site-packages
. Außerdem habe ich die Datei __init__.py.bin
im Toolkit-Ordner, um Python anzuzeigen, dass dies ein Paket ist. Ich habe auch ein __init__.py.bin
im Beispielverzeichnis.
Ich weiß nicht, warum Python die Datei nicht finden kann, wenn sie sich befindet sys.path
. Irgendwelche Ideen? Kann es ein Berechtigungsproblem sein? Benötige ich eine Ausführungserlaubnis?
755
. Dies lag daran, dass umask
auf dem Computer 0027
aufgrund dessen others
keine read
Berechtigung vorhanden war, wodurch das Modul nicht gelesen wurde. Das Hinzufügen einer read
Berechtigung hat mein Problem behoben. Es lohnt sich, die Berechtigung des Zielverzeichnisses nach der Installation zu überprüfen.
interface
(war ein Konflikt).