def chunks(iterable, size=10):
    iterator = iter(iterable)
for first in iterator:

    def chunk():
        yield first
for more in islice(iterator, size - 1):
    yield more
yield chunk()
Разбить генератор на куски без предварительного обхода