Встречается на 1% собеседований по Python
Какие методы нужно определить, чтобы создать собственный итератор в Python
Чтобы создать собственный итератор в Python, нужно реализовать два метода в классе:
__iter__– возвращает сам объект итератора (обычноself).__next__– возвращает следующий элемент последовательности или вызываетStopIteration, если элементы закончились.
Пример:
python
class CountDown:
def __init__(self, start):
self.current = start
def __iter__(self):
return self
def __next__(self):
if self.current <= 0:
raise StopIteration
self.current -= 1
return self.current + 1
for num in CountDown(3):
print(num) # 3, 2, 1Если итератор должен быть отдельным от итерируемого объекта, можно разделить их на два класса (например, как list и list_iterator).

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