Sobes.tech
Middle
227

Cosa sono i metodi __call__ in Python e come funzionano?

Risposta dell'AI

sobes.tech AI

Метод __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)