¿Por qué es un MRO ambiguo?
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 qué Python no puede crear un MRO consistente? Me parece que está bastante claro:
Buscar en Primero si el método no existe en TerceroBuscar en segundo si el método no existe en primeroPero si lo pruebas:
TypeError: Error when calling the metaclass bases
Cannot create a consistent method resolution
order (MRO) for bases First, Second