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

За что отвечает метод __iter__

Метод __iter__ делает объект итерируемым, возвращая итератор. Он вызывается при использовании iter(obj) или в циклах for. Должен возвращать объект с методом __next__ или быть генератором.

Пример:

python
class Count:
    def __init__(self, limit):
        self.limit = limit
text
def __iter__(self):
    self.current = 0
    return self  # сам является итератором

def __next__(self):
    if self.current >= self.limit:
        raise StopIteration
    self.current += 1
    return self.current - 1

for num in Count(3):
print(num) # 0, 1, 2

text

Ключевые моменты:
- Без `__iter__` объект нельзя использовать в `for`
- Может возвращать отдельный итератор или сам объект (если реализует `__next__`)
- Часто реализуется как генератор через `yield` для простоты
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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