Прежде всего: извините, я знаю, что вопрос об относительном импорте был много, но я просто не нашел решения. Если возможно, я хотел бы использовать следующий макет каталога:
myClass/
__init__.py
test/
demo.py
benchmark.py
specs.py
src/
__init__.py
myClass.py
Теперь мои вопросы:
-
Как тестовые файлы из пакета правильно импортируют myClass.py?
-
Как вы импортируете пакет извне, если вы примете myClass в качестве подмодуля в libs/myClass или include/myClass?
До сих пор я не мог найти изящного решения для этого. Из того, что я понимаю Guido Decision, можно сделать from ..src import myClass
, но это будет ошибка:
ValueError: Attempted relative import in non-package
Что выглядит так, как не обрабатывать myClass как пакеты. Чтение документов:
Файлы __init__.py необходимы, чтобы Python рассматривал каталоги как содержащие пакеты;
Кажется, мне не хватает чего-то, что указывает, где скрипты пакета, следует ли использовать .pth?