Синтаксис множественного наследования в Python позволяет классу наследовать атрибуты и методы от более чем одного родительского класса. 5 Для этого нужно перечислить классы-родители через запятую в скобках после имени класса. 5
Пример: 1
class Base1: passclass Base2: pass# этот класс наследует сразу от двух родительских классов: Base1 и Base2class MultiDerived(Base1, Base2): pass
Работа синтаксиса основана на порядке разрешения методов (MRO). 1 Любой указанный атрибут сначала ищется в объявленном классе. 1 Если его там нет, поиск продолжается в родительских классах на максимальную глубину слева направо без прохода по одному классу дважды. 1
Например, в случае с классом MultiDerived порядок поиска будет следующим: [MultiDerived, Base1, Base2, object]. 1