Back to questions
Junior — Middle
57
Создавали ли вы собственные реализации итераторов в своих проектах?
Answer from AI
sobes.tech AI
Да, в Python часто создают собственные итераторы, особенно когда нужно реализовать специфическую логику обхода данных.
Итератор — это объект, который реализует методы __iter__() и __next__().
Пример собственной реализации итератора, который перебирает числа от 1 до n:
class CountUpTo:
def __init__(self, max_value):
self.max = max_value
self.current = 0
def __iter__(self):
return self
def __next__(self):
if self.current < self.max:
self.current += 1
return self.current
else:
raise StopIteration
# Использование:
for number in CountUpTo(5):
print(number)
Такой итератор полезен, когда нужно контролировать процесс обхода или создавать ленивые последовательности.