Junior — Middle
103
Python'da __call__ metodunun kullanma amacı nedir ve avantajları nelerdir?
Sorulan şirketler
АО К-Технологии
AI'dan gelen yanıt
sobes.tech yapay zeka
Метод __call__ в Python позволяет сделать экземпляр класса вызываемым как функцию. Это значит, что после определения этого метода можно использовать объект класса с синтаксисом вызова, например obj(), и при этом будет выполнен код внутри __call__.
Преимущества использования __call__:
- Позволяет создавать объекты-функции с внутренним состоянием.
- Удобно для реализации паттернов, например, фабрик или декораторов.
- Улучшает читаемость и гибкость кода, объединяя данные и поведение.
Пример:
class Multiplier:
def __init__(self, factor):
self.factor = factor
def __call__(self, x):
return x * self.factor
double = Multiplier(2)
print(double(5)) # Выведет 10
Здесь объект double ведет себя как функция, умножающая число на 2.