Using generators takes text:
DEF Blocks (F obj): Block = [] counter = 0 for Line in F obj: block.append (Line) counter + =. 1 IF counter == 10 : the yield Block # return intermediate results, the next value, continuing from here to performing at Block = [] counter = 0 IF Block: # some files not the last row 10 the yield Block IF the __name__ == ' __main__ ' : F obj= open('./tmp/shop.data') for lines in blocks(fobj): print(lines) print() fobj.close()
Output results:
['root:x:0:0:root:/root:/bin/bash\n', 'daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin\n', 'bin:x:2:2:bin:/bin:/usr/sbin/nologin\n', 'sys:x:3:3:sys:/dev:/usr/sbin/nologin\n', 'root:x:0:0:root:/root:/bin/bash\n', 'daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin\n', 'bin:x:2:2:bin:/bin:/usr/sbin/nologin\n', 'root:x:0:0:root:/root:/bin/bash\n', 'daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin\n', 'bin:x:2:2:bin:/bin:/usr/sbin/nologin\n'] ['root:x:0:0:root:/root:/bin/bash\n', 'daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin\n', 'bin:x:2:2:bin:/bin:/usr/sbin/nologin\n', '\n', '\n', '\n', '\n', '\n']
Shop.data text content, a total of 13 lines:
1 root:x:0:0:root:/root:/bin/bash 2 daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin 3 bin:x:2:2:bin:/bin:/usr/sbin/nologin 4 sys:x:3:3:sys:/dev:/usr/sbin/nologin 5 root:x:0:0:root:/root:/bin/bash 6 daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin 7 bin:x:2:2:bin:/bin:/usr/sbin/nologin 8 root:x:0:0:root:/root:/bin/bash 9 daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin 10 bin:x:2:2:bin:/bin:/usr/sbin/nologin 11 root:x:0:0:root:/root:/bin/bash 12 daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin 13 bin:x:2:2:bin:/bin:/usr/sbin/nologin