Представьте себе эту структуру каталогов:
app/
__init__.py
sub1/
__init__.py
mod1.py
sub2/
__init__.py
mod2.py
Я кодирую mod1
, и мне нужно импортировать что-то из mod2
. как мне это сделать?
Я пытался, from ..sub2 import mod2
но я получаю "Попытка относительного импорта в не-пакет".
Я погуглил, но нашел только " sys.path
манипулятивные" хаки. Разве нет чистого пути?
Изменить: все мои __init__.py
в настоящее время пустые
Edit2: я пытаюсь сделать это, потому что sub2 содержит классы, которые являются общими для подпакетов ( sub1
, subX
и т. Д.).
Edit3: поведение, которое я ищу, такое же, как описано в PEP 366 (спасибо Джон B)