chevron_left

Python 语言基础面试复习

免费
第 1.3 回

教程文档

Python 语言基础面试复习 - 文件操作

2023年11月17日
Python 语言基础面试复习

文件操作

4G 内存怎么读取一个 5G 的数据?

  • 方法一: 可以通过生成器,分多次读取,每次读取数量相对少的数据 (比如 500MB) 进行处理,处理结束后在读取后面的 500MB 的数据。

  • 方法二: 可以通过 linux 命令 split 切割成小文件,然后再对数据进行处理,此方法效率比较高。可以按照行 数切割,可以按照文件大小切割。

现在考虑有一个 jsonline 格式的文件 file.txt 大小约为 10K,之前处理文件的代码如下所示

def get_lines(): 
   l = []
   with open(‘file.txt’,‘rb’) as f: 
      for eachline in f:
         l.append(eachline) 
         return l
if __name__ == ‘__main__’:
   for e in get_lines():
   process(e) #处理每一行数据

现在要处理一个大小为 10G 的文件,但是内存只...

课程介绍

Python 工作面试必备复习知识