Я пишу следующую структуру классов:
class genericCar(ABC):
baseCarMethodA()
class specificCar(genericCar):
specificCarMethodB()
class genericEngine(ABC):
baseEngineMethodA()
class specificEngine(genericEngine):
specificEngineMethodA()
Я хочу создать контейнерный объект, который динамически наследуется от множества различных классов, таких как specificCar и specificEngine, и других, для создания объекта, который содержитих методы и поля.
Я делаю это, выбирая реализацию универсальных типов классов, которые объект должен наследовать через строковое имя:
def getBuiltCar(genericCar, genericEngine):
class carFactory(genericCar, genericEngine):
def __init__(self):
pass
return builtCar
Идея состоит в том, чтобы построить объект (автомобиль) который наследуется от (concreteImplofGenericTypeA, concreteImplofGenericTypeB и т.,Так что по сути это фабрика динамического смешивания.
Как мне работать с системой типизации Python, чтобы обеспечить правильные подсказки типов для pycharm для правильного автозаполнения методов и полей из динамически унаследованных конкретных классов?Или я все об этом говорю не так?