Я знаю, що я оновлював досить стару публікацію, і я спробував використовувати automodinit
, але дізнався, що процес налаштування порушено для python3. Отже, виходячи з відповіді Лука, я придумав простішу відповідь - яка може не працювати з .zip - на це питання, тому я подумав, що мені слід поділитися нею тут:
в __init__.py
модулі від yourpackage
:
#!/usr/bin/env python
import os, pkgutil
__all__ = list(module for _, module, _ in pkgutil.iter_modules([os.path.dirname(__file__)]))
і в іншому пакеті нижче yourpackage
:
from yourpackage import *
Тоді ви будете завантажувати всі модулі, розміщені в пакеті, і якщо ви напишете новий модуль, він також буде імпортований автоматично. Звичайно, використовувати такі речі обережно, з великими повноваженнями постає велика відповідальність.