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

Что должен содержать метод __next__

Метод __next__ должен возвращать следующий элемент в итерации. Если элементы закончились, он должен вызвать исключение StopIteration.

Пример:

python
class Counter:
    def __init__(self, limit):
        self.limit = limit
        self.current = 0
text
def __iter__(self):
    return self

def __next__(self):
    if self.current < self.limit:
        value = self.current
        self.current += 1
        return value
    else:
        raise StopIteration

Использование:

counter = Counter(3)
for num in counter:
print(num) # 0, 1, 2

text

Ключевые моменты:
1. Должен возвращать следующее значение
2. Должен поддерживать внутреннее состояние (например, индекс текущего элемента)
3. При завершении итерации вызывает `StopIteration`
4. Часто реализуется вместе с `__iter__` (который возвращает сам объект)
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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