I found myself writing: for vertex, height in zip( self.cache.height_to_vertex[height_slice], range(height_slice.start, height_slice.stop)):I would have preferred: for height, vertex in enumerate( self.cache.height_to_vertex)[height_slice]: