En Python, el método que se llama cuando se crea un objeto a partir de una clase es el método __init__
. Este método, también conocido como método de inicialización, sirve para definir las propiedades iniciales de un objeto.
En el mundo de la programación orientada a objetos, el proceso de crear un objeto desde una clase se conoce como instanciación. Cuando este proceso ocurre en Python, automáticamente se ejecuta el método __init__
.
Veamos ahora un ejemplo práctico de cómo podría usarse __init__
:
class Coche:
def __init__(self, color, marca):
self.color = color
self.marca = marca
mi_coche = Coche('rojo', 'Ferrari')
print(mi_coche.color) # imprime: rojo
print(mi_coche.marca) # imprime: Ferrari
En este ejemplo, Coche
es la clase y mi_coche
es un objeto de esa clase. El método __init__
, cuando se llama con los argumentos 'rojo' y 'Ferrari', inicializa el objeto mi_coche
con esas propiedades.
En Python, es una buena práctica definir el método __init__
para inicializar los atributos de un objeto. Esto es especialmente útil cuando se quieren establecer valores iniciales para las variables de objeto.
Es importante notar, sin embargo, que __init__
no es un constructor de la clase. Un constructor es una característica de algunos lenguajes de programación que crea e inicializa un objeto. Pero en Python, el constructor es en realidad el menos conocido método __new__
, que es llamado antes que __init__
. No obstante, __new__
es raramente necesitado en la programación de Python común, mientras que __init__
es mucho más comúnmente usado.
Para resumir, siempre que se crea una instancia de una clase en Python, el método __init__
es llamado. Permite configurar los atributos de la instancia y realizar cualquier otra configuración inicial necesaria. Es una herramienta esencial en la programación orientada a objetos en Python.