简单了解Python读取大文件代码实例


Posted in Python onDecember 18, 2019

这篇文章主要介绍了简单了解Python读取大文件代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

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

I、第一种读取方式

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

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

II、第二种读取方式

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

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)

III、第三种读取方式

使用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 相关文章推荐
Python中使用hashlib模块处理算法的教程
Apr 28 Python
Python作用域用法实例详解
Mar 15 Python
解决Python出现_warn_unsafe_extraction问题的方法
Mar 24 Python
python3使用urllib模块制作网络爬虫
Apr 08 Python
Python 中pandas.read_excel详细介绍
Jun 23 Python
Django重装mysql后启动报错:No module named ‘MySQLdb’的解决方法
Apr 22 Python
在Mac上删除自己安装的Python方法
Oct 29 Python
python单线程文件传输的实例(C/S)
Feb 13 Python
基于keras输出中间层结果的2种实现方式
Jan 24 Python
python GUI库图形界面开发之PyQt5树形结构控件QTreeWidget详细使用方法与实例
Mar 02 Python
用python给csv里的数据排序的具体代码
Jul 17 Python
python 判断文件或文件夹是否存在
Mar 18 Python
python 比较2张图片的相似度的方法示例
Dec 18 #Python
使用Python的Turtle库绘制森林的实例
Dec 18 #Python
python3 requests库实现多图片爬取教程
Dec 18 #Python
在notepad++中实现直接运行python代码
Dec 18 #Python
简单了解python装饰器原理及使用方法
Dec 18 #Python
修改Pandas的行或列的名字(重命名)
Dec 18 #Python
Python3直接爬取图片URL并保存示例
Dec 18 #Python
You might like
便携利器 — TECSUN PL-365简评
2021/03/02 无线电
DOTA2游戏同人动画《龙之血》导演接受采访
2021/03/05 欧美动漫
PHP仿盗链代码
2012/06/03 PHP
Yii实现的多级联动下拉菜单
2016/07/13 PHP
对php 判断http还是https,以及获得当前url的方法详解
2019/01/15 PHP
拉动滚动条加载数据的jquery代码
2012/05/03 Javascript
js解析与序列化json数据(二)序列化探讨
2013/02/01 Javascript
jQuery ui插件的使用方法代码实例
2013/05/08 Javascript
jquery 循环显示div的示例代码
2013/10/18 Javascript
jQuery采用连缀写法实现的折叠菜单效果
2015/09/18 Javascript
JS实现自动定时切换的简洁网页选项卡效果
2015/10/13 Javascript
jquery trigger函数执行两次的解决方法
2016/02/29 Javascript
VueJS如何引入css或者less文件的一些坑
2017/04/25 Javascript
JS中如何轻松遍历对象属性的方式总结
2019/08/06 Javascript
jQuery Raty星级评分插件使用方法实例分析
2019/11/25 jQuery
vue中实现点击按钮滚动到页面对应位置的方法(使用c3平滑属性实现)
2019/12/29 Javascript
解决vue路由name同名,路由重复的问题
2020/08/05 Javascript
javaScript代码飘红报错看不懂?读完这篇文章再试试
2020/08/19 Javascript
Vue父组件监听子组件生命周期
2020/09/03 Javascript
three.js 实现露珠滴落动画效果的示例代码
2021/03/01 Javascript
python 算法 排序实现快速排序
2012/06/05 Python
Python struct模块解析
2014/06/12 Python
Python类的多重继承问题深入分析
2014/11/09 Python
python正向最大匹配分词和逆向最大匹配分词的实例
2018/11/14 Python
在Pycharm中将pyinstaller加入External Tools的方法
2019/01/16 Python
如何使用Django Admin管理后台导入CSV
2020/11/06 Python
Python更改pip镜像源的方法示例
2020/12/01 Python
HTML5+CSS3绘制锯齿状的矩形
2016/03/01 HTML / CSS
HTML5 拖放(Drag 和 Drop)详解与实例代码
2017/09/14 HTML / CSS
医院总经理职责
2013/12/26 职场文书
更夫岗位责任制
2014/02/11 职场文书
客户答谢会致辞
2015/01/20 职场文书
感谢信格式范文
2015/01/22 职场文书
Python进度条的使用
2021/05/17 Python
Mysql Online DDL的使用详解
2021/05/20 MySQL
DIV CSS实现网页背景半透明效果
2021/12/06 HTML / CSS