Generators and Iterators

Generators are a type of iterable like lists or tuples but unlike lists, they don’t store all values in memory. They yield items one at a time using the yield keyword.

def countdown(n):
  while n > 0:
    yield n
    n -= 1

for number in countdown(5):
  print(number)

Iterators are objects with __iter__() and __next__() methods. Generators are a simpler way to create iterators.

← PrevNext →