Ich habe folgende Verzeichnisstruktur:
c:\project\
c:\project\__init__.py
c:\project\test.py
c:\project\deps\__init__.py
c:\project\deps\mod1\__init__.py
c:\project\deps\mod1\[...]
c:\project\deps\mod2\__init__.py
c:\project\deps\mod2\[...]
Die Verzeichnisse \deps\mod1 und \deps\mod2 enthalten externen Code, welchen ich in meinem Projekt verwenden möchte, aber nicht anpassen will:
In c:\project\test.py versuche ich nun ein
import deps.mod1
Das funktioniert im Normalfall auch. Allerdings enthält der Code in deps\mod1\ in diversen Dateien die folgende Zeile:
import mod2
Beim Ausführen von test.py bekomme ich dann den Fehler, dass mod2 nicht gefunden werden kann:
Traceback (most recent call last):
File "test.py", line 1, in <module>
import deps.mod1
File "C:\project\deps\mod1\__init__.py", line 1, in <module>
import mod2
ImportError: No module named mod2
Ist es möglich ohne Modifikation des gesamten Codes in deps\mod1 und deps\mod2 die Module mod1 und mod2 direkt aus c:\project\ zu importieren?
Danke für eure Hilfe!
import problem
Du könntest relative imports nutzen oder den order deps in sys.path aufnehmen.
Aber muss diese Struktur denn sein?
Aber muss diese Struktur denn sein?
[url=http://wiki.python-forum.de/PEP%208%20%28%C3%9Cbersetzung%29]PEP 8[/url] - Quak!
[url=http://tutorial.pocoo.org/index.html]Tutorial in Deutsch[/url]
[url=http://tutorial.pocoo.org/index.html]Tutorial in Deutsch[/url]