Wiem, że istnieje mnóstwo podobnych pytań na temat przepełnienia stosu. Ale wspólna odpowiedź nie działa dla mnie.ścieżka względna nie działa nawet z __init__.py
Mam strukturę plików jak to
proj/
lib/
__init__.py
aa.py
bb.py
test/
__init__.py
aa_test.py
Pomyślałem, że gdybym to kod w moim test.py
import lib.aa
lub
from lib import aa
byłbym w stanie w odniesieniu do modułów w katalogu lib/
. Ale to nie zadziałało.
Więc próbowałem dodać do ścieżki, a to dodaje go poprawnie:
os.environ["PATH"] += ":%s" % os.path.abspath(os.path.join("..",""))
print os.environ["PATH"]
ale nawet teraz, gdy próbuję sprawozdań importu nad ... Dostaję błąd
ImportError: No module named aa
lub
ImportError: Importing from non-package <Something...>
Czy jest coś oczywistego, czego mi brakuje?
Czy istnieje sposób sprawdzenia, czy poprawnie skonfigurowałem pliki __init__.py
, czy też mogę zobaczyć hierarchię pakietów?