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

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