Вдогоночку. Если надо указать тип для переменной, принимающей класс
Удобно, когда функция принимает класс. Например, функция-фабрика какая-то, которая принимает на вход класс и создаёт его экземпляр.
#IT #backend #python #codebetter
Animal
или классы его наследники (а не экземпляр класса Animal
) — можно указать так:animal: type[Animal]
Удобно, когда функция принимает класс. Например, функция-фабрика какая-то, которая принимает на вход класс и создаёт его экземпляр.
class Animal: pass
class Cat(Animal): pass
class Dog(Animal): pass
def create_animal(animal_cls: type[Animal]) -> Animal:
print("create another animal...")
return animal_cls()
create_animal(Cat)
create_animal(Dog)
#IT #backend #python #codebetter