Встречается на собеседованиях • сегодня
Какие методы нужно определить, чтобы создать собственный итератор
Чтобы создать собственный итератор в Python, нужно определить два метода в классе: __iter__() и __next__().
__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
num = self.current
self.current -= 1
return num
for num in CountDown(3):
print(num) # 3, 2, 1Если нужен только итерируемый объект (без сохранения состояния), можно использовать yield в __iter__().

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