Métodos especiales, también conocidos como métodos Dunder o métodos Mágicos. Se utilizan para emular el comportamiento de las funciones integradas.

Estos métodos tienen un significado particular para el intérprete de Python. Sus nombres empiezan y terminan en __ (doble guión bajo). Por ejemplo init.

Normalmente estos métodos no son invocados directamente por el programador. Por ejemplo cuando haces una simple suma 2 + 2 se está invocando al método __add__ internamente.

Métodos de iniciación y constructores

__init__ Inicializa un objeto

Crea un nuevo objeto cuando se llama a la instancia de una clase.

class Car(object):
    def __init__(self):
        ...
    def __repr__(self):
        ...

__new__ Crea un objeto

__del__ Elimina un objeto

Métodos mágicos de comparación

__lt__ a < b

__gt__ a > b

__le__ a <= b

__ge__ a >= b

__ne__ a != b

__eq__ a == b

Métodos mágicos para matemáticas

__add__ obj + …

__sub__ obj - …

__mul__ obj * …

__floordiv__ obj //

__truediv__ obj /

__mod__ obj %

__pow__ obj ** …

Otros Métodos mágicos

__str__ Pretty print object. Devuelve una cadena de carácteres. Representación Legible para usuarios.

__repr__ Devuelve una cadena de carácteres. Representación no ambigua útil para desarrolladores.

__len__ Devuelve la cantidad de elementos que tiene una lista.

Special Methods Socratica Youtube 📹

Corey Schafer Youtube 📹

Magic Methods

Mathspp

Posteado en Programación con : JavaScript, Python