Что такое протокол итератора
Python
Middle
Без компании
Что такое протокол итератора
Ответы
Протокол итератора в Python — это соглашение, по которому объект может быть итерируемым. Для этого он должен реализовать два метода:
- `__iter__()` — возвращает сам итератор.
- `__next__()` — возвращает следующий элемент или вызывает `StopIteration`, если элементы закончились.
Пример:
```
class Counter:
def __init__(self, limit):
self.limit = limit
self.current = 0
def __iter__(self):
return self
def __next__(self):
if self.current < self.limit:
self.current += 1
return self.current
raise StopIteration
# Использование
for num in Counter(3):
print(num) # 1, 2, 3
```
Также можно использовать встроенные функции `iter()` и `next()` для работы с итераторами. Например, списки, кортежи и строки поддерживают протокол итератора.