Встречается на собеседованиях • сегодня
Что должен содержать метод __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__` (который возвращает сам объект)
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы