
🐍 En Python, prácticamente todo es un objeto: números, cadenas, funciones y también las clases. Entender esta idea ayuda a explicar comportamientos que parecen mágicos.
Cada objeto tiene un tipo. La clase object es la base común y todas las clases son instancias de type, que es la metaclase predeterminada. Incluso type es una instancia de sí misma: una relación circular implementada explícitamente en CPython.
El artículo también explica cómo Python busca atributos en el objeto, su clase y las clases base. Los métodos funcionan gracias a los descriptores: una función definida en una clase puede convertirse en un método ligado al objeto cuando se accede desde una instancia.
Finalmente, type puede crear clases dinámicamente recibiendo un nombre, clases base y un diccionario de atributos. La palabra clave class es, en esencia, una forma cómoda de expresar esa operación.
💡 Explicación en pocas palabras#
Imagina que cada objeto lleva una etiqueta que indica su tipo. Las clases también tienen etiqueta, y esa etiqueta es type. Python reutiliza la misma estructura para valores y clases, lo que hace el lenguaje flexible y permite metaclases, descriptores y creación dinámica de tipos.
Más información en el link 👇
