__init__) не определен в классе Python, то будет использован конструктор базового класса (если он есть). Если базового класса нет (наследуется от object неявно), то будет создан объект с атрибутами по умолчанию, без какой-либо специальной инициализации.
Если в классе Python не определен конструктор (метод __init__), то будет использован конструктор родительского класса.
Поведение:
TypeError.Важно понимать:
super().__init__(...), чтобы избежать повторения кода и обеспечить правильную инициализацию родительских атрибутов.Пример:
class Parent:
    def __init__(self, name):
        self.name = name
class Child(Parent):
    pass # Отсутствует конструктор
child = Child("Alice")
print(child.name) # Выведет: Alice
class ParentWithoutInit:
    pass
class ChildWithoutInit(ParentWithoutInit):
    pass
child2 = ChildWithoutInit() # Работает, так как ParentWithoutInit не имеет __init__
    В первом примере Child использует конструктор Parent, инициализируя атрибут name. Во втором примере, ни у ParentWithoutInit, ни у ChildWithoutInit нет конструктора, поэтому экземпляр создается без каких-либо атрибутов, заданных в конструкторе.