NK
Size: a a a
NK
AT
NK
Y
NK
K
Y
ᅠ
A
K
ᅠ
VA
M
M
K
AS
Mixins
и как они работают?
# базовые классы:
class a: x = 5
class b(a): y = 10
# проверяем наследование:
class c(a):
def __init__(self): print(self.x) # 5
class d(b):
def __init__(self): print(self.y) # 10
# Я думал, что Mixins` работают так
class e(a, b):
def __init__(self): print(self.x + self.y)
# TypeError: Cannot create a consistent method resolution
# order (MRO) for bases a, b
𝕬
Mixins
и как они работают?
# базовые классы:
class a: x = 5
class b(a): y = 10
# проверяем наследование:
class c(a):
def __init__(self): print(self.x) # 5
class d(b):
def __init__(self): print(self.y) # 10
# Я думал, что Mixins` работают так
class e(a, b):
def __init__(self): print(self.x + self.y)
# TypeError: Cannot create a consistent method resolution
# order (MRO) for bases a, b
𝕬
А
Mixins
и как они работают?
# базовые классы:
class a: x = 5
class b(a): y = 10
# проверяем наследование:
class c(a):
def __init__(self): print(self.x) # 5
class d(b):
def __init__(self): print(self.y) # 10
# Я думал, что Mixins` работают так
class e(a, b):
def __init__(self): print(self.x + self.y)
# TypeError: Cannot create a consistent method resolution
# order (MRO) for bases a, b
class Base:
a = 1
class Mixin:
b = 2
class Cls(Mixin, Base):
def __
init
__(self):
print(self.a + self.b)
class E(B, A):
— так бы сработало (т.к. в другом порядке)I