Pthon读取大文件的操作

2018-09-11  本文已影响0人  暖遇

encoding:utf-8

author = 'zhoupao'
date = '2018/7/14 22:23'

3.3 read、readline 和 readlines 的区别? (2018-4-16-lxy)

read:读取整个文件。

readline:读取下一行,使用生成器方法。

readlines:读取整个文件到一个迭代器以供我们遍历。

现在要处理一个大小为 10G 的文件,但是内存只有 4G,如果在只修改 get_lines 函数而其他代

码保持不变的情况下,应该如何实现?需要考虑的问题都有哪些?

def get_lines():
l=[]

with open('file.txt','rb') as f:

    data=f.readlines(60000)

l.append(data)

yield l

要考虑到的问题有:

内存只有 4G 无法一次性读入 10G 的文件,需要分批读入。分批读入数据要记录每次读入数据的位

置。分批每次读入数据的大小,太小就会在读取操作上花费过多时间。

上一篇下一篇

猜你喜欢

热点阅读