import importlib import pkgutil import inspect __all__ = [] for loader, module_name, is_pkg in pkgutil.walk_packages(__path__): module = importlib.import_module(f".{module_name}", __name__) for name, obj in inspect.getmembers(module, inspect.isclass): if obj.__module__ == module.__name__: globals()[name] = obj __all__.append(name)