commit
fc30a00ada
|
@ -291,10 +291,8 @@
|
|||
现在要处理一个大小为10G的文件,但是内存只有4G,如果在只修改get_lines 函数而其他代码保持不变的情况下,应该如何实现?需要考虑的问题都有那些?
|
||||
```
|
||||
def get_lines():
|
||||
l = []
|
||||
with open('file.txt','rb') as f:
|
||||
data = f.readlines(60000)
|
||||
l.append(data)
|
||||
for l in f:
|
||||
yield l
|
||||
```
|
||||
要考虑的问题有:内存只有4G无法一次性读入10G文件,需要分批读入分批读入数据要记录每次读入数据的位置。分批每次读取数据的大小,太小会在读取操作花费过多时间。
|
||||
|
|
Loading…
Reference in New Issue