Встречается на собеседованиях • сегодня

Что такое __call__ в Python

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

python
class Adder:
    def __init__(self, x):
        self.x = x
text
def __call__(self, y):
    return self.x + y

add_five = Adder(5)
print(add_five(3)) # Выведет 8

text

**Особенности:**  
- Позволяет создавать вызываемые объекты (callable).  
- Может принимать аргументы, как обычная функция.  
- Полезен для создания декораторов, функторов или объектов с состоянием, которые нужно вызывать.  

Проверить, является ли объект вызываемым, можно с помощью `callable(obj)`.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы