Сделай функцию-генератор, которая из файла достаёт заданное число записей.
>>> def split_list(lst, size):
... out = []
... for i in lst:
... out.append(i)
... if len(out) == size:
... yield out
... out = []
... if out:
... yield out
...
>>> list(split_list([1, 2, 3, 4, 5, 6, 7, 8, 9], 1))
[[1], [2], [3], [4], [5], [6], [7], [8], [9]]
>>>
>>> list(split_list([1, 2, 3, 4, 5, 6, 7, 8, 9], 2))
[[1, 2], [3, 4], [5, 6], [7, 8], [9]]
>>>
>>> list(split_list([1, 2, 3, 4, 5, 6, 7, 8, 9], 3))
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
>>>
>>> list(split_list([1, 2, 3, 4, 5, 6, 7, 8, 9], 4))
[[1, 2, 3, 4], [5, 6, 7, 8], [9]]
>>>