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

Что такое функтор (Functor)

Функтор — это объект, который можно вызывать как функцию. В Python любой объект становится функтором, если у него реализован метод __call__. Это позволяет использовать экземпляры классов как функции, сохраняя состояние между вызовами.

Пример:

python
class Adder:
    def __init__(self, n):
        self.n = n

    def __call__(self, x):
        return self.n + x

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

Ключевые особенности:

  • Сохраняет состояние (в примере self.n)
  • Может иметь дополнительные методы и атрибуты
  • Позволяет использовать ООП-подход для создания "умных" функций

Функторы часто используют для callback-ов, мемоизации или создания функций с предустановленными параметрами.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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