Ответ
Да, Python поддерживает множественное наследование. Класс может наследовать от нескольких родительских классов, получая их атрибуты и методы. Порядок наследования определяется MRO (Method Resolution Order), который можно посмотреть через ClassName.__mro__.
Пример:
class A:
def method(self):
print("A method")
class B:
def method(self):
print("B method")
class C(A, B):
pass
c = C()
c.method() # Выведет "A method" (первый родитель в списке)
Нюансы:
- При конфликте методов используется порядок из MRO (слева направо)
- Может усложнять архитектуру (алмазная проблема наследования)
- Рекомендуется использовать миксины для добавления функциональности