Python读取大文件

枫铃3年前 (2021-09-30)Python220

前言:通常对于大文件读取及处理,不可能直接加载到内存中,因此进行分批次小量读取及处理

1、第一种读取方式

一行一行的读取,速度较慢

def read_line(path):
    with open(path, 'r', encoding='utf-8') as fout:
        line = fout.readline()
        while line:
            line = fout.readline()
            print(line)

2、第二种读取方式

设置每次读取大小,从而完成多行快速读取

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
def read_size(path):
    with open(path, "r", encoding='utf-8') as fout:
        while 1:
            buffer = fout.read(8 * 1024 * 1024)
            if not buffer:
                break
            print(buffer)

3、第三种读取方式

使用itertools模块,islice返回的是一个生成器,可以用list格式化

from itertools import islice
def read_itertools(path):
    with open(path, 'r', encoding='utf-8') as fout:
        list_gen = islice(fout, 0, 5)  # 两个参数分别表示开始行和结束行
        for line in list_gen:
            print(line)

相关文章

python中F/f表达式优于format()表达式

F/f表达式可以解析任意...

django批量form表单处理

django批量form表单处理

1.应用说明 一般在表单信息录入中,如果存在许多重复提交的信息,我们就需要进行批量处理,比如学生信息的批量录入。...

python中的内部函数和闭包函数

python中的内部函数和闭包函数

内部函数 在函数内部声...

Python里三个最高逼格的调试神器

Python里三个最高逼格的调试神器

调试是开发过程中不可避免的一个环节,在Python中我们使用print、logging、assert等方法进行调试既简单又实用,但...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。