Por que esse MRO ambíguo?
class First(object):
def __init__(self):
print "first"
class Second(First):
def __init__(self):
print "second"
class Third(First, Second):
def __init__(self):
print "third"
Por que o Python não pode criar uma MRO consistente? Parece-me que é bastante claro:
Procure primeiro se o método não existir no terceiroProcure em Segundo se o método não existir em PrimeiroMas se você tentar:
TypeError: Error when calling the metaclass bases
Cannot create a consistent method resolution
order (MRO) for bases First, Second