153. Implementing Custom Iterators
Here are 10 Python snippets demonstrating how to implement custom iterators to control iteration behavior. Each snippet is separated by a delimiter.
Snippet 1: Basic Custom Iterator
Copy
class Counter:
def __init__(self, start, end):
self.current = start
self.end = end
def __iter__(self):
return self
def __next__(self):
if self.current >= self.end:
raise StopIteration
self.current += 1
return self.current - 1
# Usage
for number in Counter(1, 5):
print(number) # Output: 1, 2, 3, 4Snippet 2: Iterator for Fibonacci Sequence
Copy
Snippet 3: Reverse Iterator
Copy
Snippet 4: Custom Range Iterator
Copy
Snippet 5: Circular Iterator
Copy
Snippet 6: File Line Iterator
Copy
Snippet 7: Infinite Iterator
Copy
Snippet 8: Skipping Iterator
Copy
Snippet 9: Countdown Iterator
Copy
Snippet 10: Batched Iterator
Copy
Last updated