Я новичок в Python, и я много искал в google и читал статьи об относительном импорте и т. Д. Несмотря на то, что я не могу заставить его работать. Пожалуйста, рассмотрите мою следующую структуру проекта:Структура проекта Python и относительный импорт
/Project
/docs
/log
/prev
/src
a.py
/tests
/tests1
b.py
/tests2
.gitignore
README.txt
program.py
И то, что я пытаюсь добиться, чтобы импортировать класс из файла a.py
внутри сценария b.py
. Вообще говоря, сценарий b.py
должен иметь строку с импортом a.py
. Я прочитал несколько статей об использовании файлов __init__.py
, где их следует поместить? И должен ли я изменить PYTHONPATH
каким-то образом, как? И последний вопрос, структура проекта ОК? Спасибо за ваше время и помощь!
Посмотрите, например, http://www.jeffknupp.com/blog/2013/08/16/open-sourcing-a-python-project-the-right-way/ - вы должны написать 'setup.py' и * install * ваш пакет для импорта по тестам. Сама директория '/ tests' обычно не является модулем (поэтому нет' __init __. Py') - см. Https://pytest.org/latest/goodpractises.html#goodpractises – jonrsharpe
@jonrsharpe "сама директория/tests isn ' t обычно модуль "- вы имеете в виду пакет, а не модуль там? –
@TomDalton yes, package – jonrsharpe