python读取较大数据文件

python读取较大数据文件

常用方式一:

with open('file_name') as file:
    for line in file:
        do_things(line)

上述方式不会一次性读取整个文件,类似buffer机制。

对可迭代对象 f,进行迭代遍历:for line in f,会自动地使用缓冲IO(buffered IO)以及内存管理。

方式二:

自己实现类似于buffer:

def readChunks(file, chunkSize = 4096):
    while 1:
        data = file.read(chunkSize)
        if not data:
            break
        yield data

f = open('file')

for chunck in readChunks(s):
    do_thing(chunk)

f.close()

==不适合的方法==

  1. read方法

    对于文件会一次性读取,可能造成内存错误 MemoryError

  1. 使用readline(), readlines(), read(chunckSize)的方法称为转换接口

    readline()方法一次读取一行文件;

    readlines()方法一次性读取完,然后转换成list存储内存;

    read(chunckSize)方法(重载)读取指定长度;

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容