Можно ли создать пакет динамически, например:
subpackage = create_subpackage(package_name, package_path)
Пакет должен быть связан с физическим путем, чтобы через него можно было импортировать модули из этого пути.
Цель состоит в том, чтобы иметь возможность иметь подпакеты, которые не являются подкаталогами их родительского пакета.
например
main_package/
__init__.py
sub_package/
__init__.py
some_module.py
Содержимое main_package/__init__.py
:
sub_package = create_subpackage("sub_package", "/a/path/to/sub_package")
globals()["sub_package"] = sub_package
Содержание some_random_script.py
from main_package.sub_package import some_module