Встречается на собеседованиях • сегодня
Зачем нужны магические (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
интервью вопросы и ответы