Empfangsimportfehler: Kein Modul mit dem Namen ***, sondern mit __init__.py

8

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.

    
Mark Rowlands 10.05.2013, 11:07
quelle

3 Antworten

11

Fügen Sie sys.path.append zur Liste Ihrer Importe hinzu.

%Vor%     
Gus E 10.05.2013, 11:16
quelle
7

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

ausgeführt wird     
Mark Rowlands 27.05.2014 14:05
quelle
0

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)

    
yuval 03.11.2015 02:07
quelle

Tags und Links