Тип аннотации для дочерних классов в родительском __init__()

#python #annotations #intellisense #type-hinting #python-typing

#python #аннотации #intellisense #подсказка типа #python-типизация

Вопрос:

Возможно ли получить аннотации «динамического» типа для дочерних классов из методов, определенных в родительском?

Моя ситуация такова:

 class Parent():
  def __init__(self, obj):
    self.obj = obj

class ChildA(Parent):
  class Meta:
    model = ModelA

class ChildB(Parent):
  class Meta:
    model = ModelB
 

Два дочерних класса могут быть инициализированы разными объектами. Я бы хотел, чтобы они оба наследовали один и тот же __init__() метод, но также могли работать в них и self.obj предоставлять подсказки intellisense и type на основе их соответствующих (разных) моделей.

Возможно ли это?

Комментарии:

1. Какова связь между self.obj и model ?

2.Если бы это было возможно, это, вероятно, было бы сделано через a Generic Protocol , который определяет связь между типами. Мне нужно было бы знать предысторию, чтобы сказать наверняка.