Встречается на собеседованиях • сегодня
Почему с появлением базового класса object появилось правило MRO
В Python метод разрешения порядка (MRO) появился с введением object как базового класса для поддержки множественного наследования. MRO определяет порядок, в котором интерпретатор ищет методы в иерархии классов. Алгоритм C3 линеаризации гарантирует, что порядок будет последовательным и предсказуемым, избегая проблем типа "ромбовидного наследования".
Пример:
python
class A(object):
def method(self):
print("A")
class B(A):
def method(self):
print("B")
class C(A):
def method(self):
print("C")
class D(B, C):
pass
d = D()
d.method() # Выведет "B" (MRO: D → B → C → A → object)
print(D.__mro__) # Показывает порядок поиска методовБез object и MRO множественное наследование могло приводить к неоднозначностям.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы