Sobes.tech
Назад к вопросам
Junior — Middle
63

Можешь объяснить, что такое объект, вызываемый как функция, или callable-объект?

Ответ от нейросети

sobes.tech AI

Callable-объект в Python — это объект, который можно вызвать как функцию, то есть использовать круглые скобки с аргументами: obj().

Объекты считаются вызываемыми, если у них определён метод __call__.

Пример:

class Multiplier:
    def __init__(self, factor):
        self.factor = factor
    def __call__(self, x):
        return x * self.factor

mul_by_3 = Multiplier(3)
print(mul_by_3(10))  # Выведет 30

Здесь mul_by_3 — объект, который ведёт себя как функция, умножая входное значение на 3.

Callable-объекты полезны для создания объектов с состоянием, которые можно использовать как функции, например, для настройки параметров вызова.