code: def iter_steps(g, steps):
      
      values = []
      for value in g:
          values.append(value)
          if len(values) == steps:
              yield list(values)
              values = []
      if values:
          yield list(values)
docs: iterate over 'g' in blocks with a length of the given 'step' count.
  
      >>> for v in iter_steps([1,2,3,4,5], steps=2): v
      [1, 2]
      [3, 4]
      [5]
      >>> for v in iter_steps([1,2,3,4,5,6,7,8,9], steps=3): v
      [1, 2, 3]
      [4, 5, 6]
      [7, 8, 9]
  
                                   12345678        12345678
                                           12345678
      >>> bits = [int(i) for i in "0101010101010101111000"]
      >>> for v in iter_steps(bits, steps=8): v
      [0, 1, 0, 1, 0, 1, 0, 1]
      [0, 1, 0, 1, 0, 1, 0, 1]
      [1, 1, 1, 0, 0, 0]