Iterators in python are used with a ‘for loop’. code example
Example 1: iterator in python
class PowTwo:
"""Class to implement an iterator
of powers of two"""
def __init__(self, max=0):
self.max = max
def __iter__(self):
self.n = 0
return self
def __next__(self):
if self.n <= self.max:
result = 2 ** self.n
self.n += 1
return result
else:
raise StopIteration
# create an object
numbers = PowTwo(3)
# create an iterable from the object
i = iter(numbers)
# Using next to get to the next iterator element
print(next(i))
print(next(i))
print(next(i))
print(next(i))
print(next(i))
Example 2: python for loop iterator
import numpy as np
# With array cycling
arr = np.array([1,2,3,4,5,6,7,8,9])
for i in range(len(arr)):
# logic with iterator use (current logic replaces even numbers with zero)
if arr[i] % 2 == 0: arr[i] = 0
print(arr)
# Output: [1, 0, 3, 0, 5, 0, 7, 0 , 9]