https://www.jianshu.com/p/560ff3adfee3
Python 读取文件一般可以使用 read()
,readlines()
,但这两种方法在读取大文件时都会存储内存缺陷。
1. read() 接口的问题
f = open(filename, 'rb')
f.read()
我们来读取 1 个规模为 3Gb 大小的文件,如人的参考基因组序列(hg19.fa)。read()
方法执行的操作,是一次性全部读入内存,显然会造成:MemoryError,也即会发生内存溢出!
2. readlines() 接口的问题