У меня есть структура каталогов следующим образом:
| main.py
| scripts
|--| __init__.py
| script1.py
| script2.py
| script3.py
Из main.py
импортируется модуль scripts
. Я попытался использовать pkgutils.walk_packages
в сочетании с __all__
, но, используя это, я могу импортировать все подмодули непосредственно под main
с помощью from scripts import *
. Я хотел бы получить их всех под scripts
. Какой будет самый чистый способ импортировать все подмодули scripts
, чтобы я мог получить доступ к scripts.script1
из main
?
EDIT: Мне жаль, что я немного расплывчата. Я хотел бы импортировать подмодули во время выполнения, не указав их явно в __init__.py
. Я могу использовать pkgutils.walk_packages
, чтобы получить имена подмодулей (если кто-то не знает лучшего способа), но я не уверен в самом чистом способе использования этих имен (или, может быть, ImpImporters, который walk_packages
возвращает?), Чтобы импортировать их.