Example 1: python split range equally
def chunks(lst, n):
"""Yield successive n-sized chunks from lst."""
for i in range(0, len(lst), n):
yield lst[i:i + n]
list(chunks(range(10, 75), 10))
Example 2: split list into lists of equal length python
[lst[i:i + n] for i in range(0, len(lst), n)]
Example 3: python split dict into chunks
# Since the dictionary is so big, it would be better to keep
# all the items involved to be just iterators and generators, like this
from itertools import islice
def chunks(data, SIZE=10000):
it = iter(data)
for i in range(0, len(data), SIZE):
yield {k:data[k] for k in islice(it, SIZE)}
# Sample run:
for item in chunks({i:i for i in range(10)}, 3):
print item
# Output
# {0: 0, 1: 1, 2: 2}
# {3: 3, 4: 4, 5: 5}
# {8: 8, 6: 6, 7: 7}
# {9: 9}
Example 4: split array into chunks python
a = [1, 2, 3, 4, 5, 6 ,7 ,8 ,9]
splitedSize = 3
a_splited = [a[x:x+splitedSize] for x in range(0, len(a), splitedSize)]
print(a_splited)
# [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
Example 5: split into list into even chunks
def chunks(l, n):
n = max(1, n)
return (l[i:i+n] for i in range(0, len(l), n))
Example 6: how to break a list unequal size chunks in python
>>> data = [123,452,342,533,222,402,124,125,263,254,44,987,78,655,741,165,597,26,15,799,100,154,122,563]
>>> sizes = [2, 5, 14, 3]
>>> it = iter(data)
>>> [[next(it) for _ in range(size)] for size in sizes]
[[123, 452],
[342, 533, 222, 402, 124],
[125, 263, 254, 44, 987, 78, 655, 741, 165, 597, 26, 15, 799, 100],
[154, 122, 563]]