Sobes.tech
Middle

¿Qué son los métodos __call__ en Python y cómo funcionan?

sobes.tech AI

Respuesta de la IA

Метод __call__ позволяет сделать экземпляры класса вызываемыми объектами, как функции. Когда экземпляр класса с определенным методом __call__ вызывается с использованием скобок (), выполняется код этого метода.

Пример:

# Класс с методом __call__
class CallableObject:
    def __init__(self, name):
        self.name = name

    def __call__(self, greeting):
        // Метод __call__ принимает аргументы
        return f"{greeting}, {self.name}!"

// Создаем экземпляр класса
obj = CallableObject("Мир")

// Вызываем экземпляр как функцию
result = obj("Привет")
print(result)