Оператор import
имеет две цели:
- Определить модуль, если необходимо
- Добавить имя для этого модуля в текущей области.
Если положить import pytest
в __init__.py
, то позаботится о первом, но второе ничего не сделает. Вы не можете использовать pytest
в каждом модуле, если только вы не импортируете sys
и не используете sys.modules['pytest']
везде, где бы вы использовали pytest
в одиночку. Но это уродливо, поэтому вы можете подумать: «Эй, я просто напишу
pytest = sys.modules['pytest']
, чтобы сделать глобальное имя pytest
, ссылающееся на модуль».
Но это именно то, что import pytest
уже делает.