如果你没那么大的内存 解决方法有几个:
使用swap 一次性read()读取
系统层面分割大文件为数个小于系统内存的小文件,分别读取
使用python 按数据大小逐块读取,使用完数据即释放该部分内存:
while True:chunk_data = file_object.read(chunk_size)
if not chunk_data:
break
yield chunk_data
常用方式一:
上述方式不会一次性读取整个文件,类似buffer机制。
对可迭代对象 f,进行迭代遍历: for line in f ,会自动地使用缓冲IO(buffered IO)以及内存管理。
方式二:
自己实现类似于buffer:
== 不适合的方法 ==
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)