2. ¿Qué es un método dunder?
En programación orientada a objetos, los métodos dunder o métodos mágicos son funciones especiales que permiten definir comportamientos específicos para las clases. Estos métodos se llaman “mágicos” porque su nombre comienza y termina con dos guiones bajos (__).
TIP
Los métodos mágicos son una herramienta poderosa que permite definir comportamientos específicos para las clases en Python. Utilizarlos de forma adecuada puede hacer que nuestro código sea más fácil de entender y mantener.
2.1. Tipos de métodos dunder:
__init__: Se utiliza para inicializar objetos y es invocado automáticamente cuando se crea una instancia de la clase.__str__: Se utiliza para representar el objeto en forma de cadena de texto.__len__: Permite determinar la longitud de un objeto.
Existen muchos otros métodos mágicos que pueden ser útiles, como __add__ (para sumar objetos), __eq__ (para comparar igualdad), __lt__ (para comparar menor que), entre otros. Sin embargo, es importante tener en cuenta que no siempre es necesario utilizar estos métodos y que su uso variará dependiendo de cada caso específico.
-
Ejemplo
__init__: -
Ejemplo
__init__con__str_: -
Ejemplo
__init__con__len__:
IMPORTANTE
El primer ejemplo y el segundo ejemplo tienen el mismo resultado, lo que hace el método dunder __str__ es convertir el objeto en una cadena de texto.
2.2. ¿Qué método dunder se ejecuta automáticamente?
El método __init__, es un método especial que se ejecuta automáticamente al invocar la clase e inicializara los atributos del objeto que le ayamos creado. Es decir, es imposible de olvidarse llamarlo ya que se llamará automáticamente.
IMPORTANTE
El método __init__ es el primer método que se ejecuta dentro de una clase.
📝 Características:
- El método
__init__no puede retornarreturndatos, no devuelve nada. - El método
__init__puede recibir parámetros que se utilizan para inicializar atributos de forma automática. - El método
__init__es un constructor de instancias. - El método
__init__es un método opcional, de todos modos es muy común declararlo.