Ich verstehe, dass diese Frage mehrmals gestellt wurde, aber nachdem ich sie gelesen und die vorgeschlagenen Korrekturen vorgenommen habe, bin ich immer noch ratlos.
Meine Projektstruktur ist wie folgt:
%Vor%Ich habe erfolgreich eine unitest-Regressionsklasse von Eclipse ohne Probleme ausgeführt.
Sobald ich versucht habe, dieselbe Klasse über die Befehlszeile auszuführen (da andere Benutzer, die die Suite ausführen werden, keinen Zugriff auf Eclipse haben), erhalte ich den Fehler:
%Vor% Wie Sie oben sehen können, hat der Modul root ein __init__.py
Alle __init__.py
Module sind komplett leer.
Und Unterstützung wäre dankbar erhalten.
Nur eine Anmerkung für jeden, der zu diesem Thema kommt, mit dem, was Gus E in der Antwort zur Annahme gezeigt hat, und einigen weiteren Erfahrungen, die ich als sehr nützlich empfinde, um sicherzustellen, dass ich meine Programme über die Kommandozeile ausführen kann auf meiner Maschine oder auf einem anderen Kollegen sollte die Notwendigkeit entstehen.
%Vor%Wenn ich die Methode 'main' im Verzeichnis 'nested' ausführe, wird sichergestellt, dass das Verzeichnis 'src' zum Zeitpunkt der Ausführung zum PYTHONPATH hinzugefügt wird, was bedeutet, dass alle folgenden Importe keinen Fehler auslösen.
Offensichtlich müssen Sie die Anzahl der Argumente ".." an die Methode os.path.join()
anpassen, die von der Position in Ihrem Programm bestimmt wird, in der Ihre Hauptmethode von
Wenn jemand hier landet:
Ich habe diesen Fehler ebenfalls gefunden. In meinem Fall habe ich ~/my/path/
am path.sys.append(...)
verwendet, und der Fix hat ~
durch den expliziten Pfadnamen ersetzt (Sie können ihn anfordern, wenn Sie pwd
eingeben, wenn Sie sich in ~
befinden)
Tags und Links python python-3.x importerror