itertools.islice - , , . , islice(f, 10, 20) 10 , , . , , , .
, . fileobj.writelines(isslice(f, 10)) 0 . , , , .
100 , 10 apeice...., , 8gig.
import itertools
import os
lines_per_file = 10
with open('big.txt') as infp:
for file_count in itertools.count(1):
out_filename = 'out-{}.txt'.format(file_count)
with open(out_filename, 'w') as outfp:
outfp.writelines(itertools.islice(infp, lines_per_file))
if os.stat(out_filename).st_size == 0:
os.remove(out_filename)
break