Встречается на 1% собеседований по Python
Зачем нужны магические (dunder) методы в генераторе
Магические методы (dunder) в генераторах позволяют кастомизировать поведение объектов при использовании встроенных операций Python. Например, __iter__ и __next__ определяют итерацию, а __enter__ и __exit__ — контекстные менеджеры.
Пример с генератором:
python
class Countdown:
def __init__(self, start):
self.start = start
def __iter__(self):
n = self.start
while n > 0:
yield n
n -= 1
# Использование
for num in Countdown(5):
print(num) # 5, 4, 3, 2, 1Здесь __iter__ превращает класс в итерируемый объект, а yield делает его генератором. Без магических методов такая интеграция с циклами for была бы невозможна.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
Похожие вопросы
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы