plugins = set()


class PluginType(type):

    def __init__(cls, name, bases, attrs):
        super(PluginType, cls).__init__(name, bases, attrs)
plugins.add(cls)


class PluginBase(object, metaclass=PluginType):
    pass
pass
Динамический импорт модулей с последующим созданием экземпляров объектов с определенным базовым классом из указанных модулей.