Встречается на собеседованиях • сегодня
Как реализован итератор в Python
В Python итератор — это объект, который реализует протокол итератора, состоящий из двух методов:
__iter__()— возвращает сам объект итератора__next__()— возвращает следующий элемент или вызываетStopIteration
Пример простого итератора:
python
class Counter:
def __init__(self, low, high):
self.current = low
self.high = high
text
def __iter__(self):
return self
def __next__(self):
if self.current > self.high:
raise StopIteration
else:
self.current += 1
return self.current - 1Использование
for num in Counter(1, 5):
print(num) # 1, 2, 3, 4, 5
text
Также можно создавать итераторы с помощью генераторов (функций с `yield`), что часто проще:
```python
def counter(low, high):
current = low
while current <= high:
yield current
current += 1Встроенные типы (list, dict, set и др.) уже реализуют протокол итератора.

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