Module (32%)
Section (34%)

La vida interna de clases y objetos: continuación

__bases__ es una tupla. La tupla contiene clases (no nombres de clases) que son superclases directas para la clase.

El orden es el mismo que el utilizado dentro de la definición de clase.

Te mostraremos solo un ejemplo muy básico, ya que queremos resaltar como funciona la herencia.

Además, te mostraremos cómo usar este atributo cuando discutamos los aspectos orientados a objetos de las excepciones.

Nota: solo las clases tienen este atributo - los objetos no.

Hemos definido una función llamada printBases(), diseñada para presentar claramente el contenido de la tupla.

Observa el código en el editor. Ejecútalo. Su salida es:

( object ) ( object ) ( SuperUno SuperDos )

Nota: una clase sin superclases explícitas apunta al objeto (una clase de Python predefinida) como su antecesor directo.



Code

class SuperUno:
pass

class SuperDos:
pass

class Sub(SuperUno, SuperDos):
pass


def printBases(cls):
print('( ', end='')

for x in cls.__bases__:
print(x.__name__, end=' ')
print(')')


printBases(SuperUno)
printBases(SuperDos)
printBases(Sub)
{{ dockerServerErrorMsg }} ×
{{ errorMsg }} ×
{{ successMsg }} ×