利用python在大量数据文件下删除某一行的例子


Posted in Python onAugust 21, 2019

python修改大数据文件时,如果全加载到内存中,可能会导致内存溢出。因此可借用如下方法,将分件分段读取修改。

with open('file.txt', 'r') as old_file:
  with open('file.txt', 'r+') as new_file:

    current_line = 0

    # 定位到需要删除的行
    while current_line < (3 - 1): #(del_line - 1)
      old_file.readline()
      current_line += 1

    # 当前光标在被删除行的行首,记录该位置
    seek_point = old_file.tell()

    # 设置光标位置
    new_file.seek(seek_point, 0)

    # 读需要删除的行,光标移到下一行行首
    old_file.readline()

    # 被删除行的下一行读给 next_line
    next_line = old_file.readline()

    # 连续覆盖剩余行,后面所有行上移一行
    while next_line:
      new_file.write(next_line)
      next_line = old_file.readline()

    # 写完最后一行后截断文件,因为删除操作,文件整体少了一行,原文件最后一行需要去掉
    new_file.truncate()

注:truncate()函数括号可以加数字,表示删除数字之后的字符串,如果不加 就从当前光标处开始截断删除

以上这篇利用python在大量数据文件下删除某一行的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python通过imaplib模块读取gmail里邮件的方法
May 08 Python
RC4文件加密的python实现方法
Jun 30 Python
Selenium的使用详解
Oct 19 Python
Pycharm之快速定位到某行快捷键的方法
Jan 20 Python
Python多项式回归的实现方法
Mar 11 Python
python+pyqt5实现图片批量缩放工具
Mar 18 Python
教你如何编写、保存与运行Python程序的方法
Jul 12 Python
HTML的form表单和django的form表单
Jul 25 Python
django foreignkey(外键)的实现
Jul 29 Python
python基于opencv检测程序运行效率
Dec 28 Python
详解使用Python写一个向数据库填充数据的小工具(推荐)
Sep 11 Python
Python基础教程,Python入门教程(超详细)
Jun 24 Python
Python 仅获取响应头, 不获取实体的实例
Aug 21 #Python
详解用Python为直方图绘制拟合曲线的两种方法
Aug 21 #Python
Python 使用指定的网卡发送HTTP请求的实例
Aug 21 #Python
Python turtle绘画象棋棋盘
Aug 21 #Python
Python随机函数库random的使用方法详解
Aug 21 #Python
Django+zTree构建组织架构树的方法
Aug 21 #Python
python的移位操作实现详解
Aug 21 #Python
You might like
PHP安装全攻略:APACHE
2006/10/09 PHP
smarty中先strip_tags过滤html标签后truncate截取文章运用
2010/10/25 PHP
PHP反射机制原理与用法详解
2017/02/15 PHP
Prototype 学习 工具函数学习($A方法)
2009/07/12 Javascript
jquery.validate使用攻略 第二部
2010/07/01 Javascript
IE与FireFox中的childNodes区别
2011/10/20 Javascript
实现web打印的各种方法介绍及实现代码
2013/01/09 Javascript
jquery中prop()方法和attr()方法的区别浅析
2013/09/06 Javascript
javascript + jquery实现定时修改文章标题
2014/03/19 Javascript
JavaScript截取字符串的2个函数介绍
2014/08/27 Javascript
JQuery实现可直接编辑的表格
2015/04/16 Javascript
学习JavaScript设计模式(接口)
2015/11/26 Javascript
Struts2+jquery.form.js实现图片与文件上传的方法
2016/05/05 Javascript
JS仿hao123导航页面图片轮播效果
2016/09/01 Javascript
微信小程序前端源码逻辑和工作流
2016/09/25 Javascript
详解ElementUI之表单验证、数据绑定、路由跳转
2017/06/21 Javascript
微信小程序实现刷脸登录
2018/05/25 Javascript
vue-resource请求实现http登录拦截或者路由拦截的方法
2018/07/11 Javascript
微信小程序日历组件使用方法详解
2018/12/29 Javascript
js实现简单页面全屏
2019/09/17 Javascript
跟老齐学Python之print详解
2014/09/28 Python
Python2.x版本中基本的中文编码问题解决
2015/10/12 Python
Python数据类型之Set集合实例详解
2019/05/07 Python
使用python搭建服务器并实现Android端与之通信的方法
2019/06/28 Python
深入了解Python iter() 方法的用法
2019/07/11 Python
python实现加密的方式总结
2020/01/19 Python
Selenium常见异常解析及解决方案示范
2020/04/10 Python
微信小程序实现可实时改变转速的css3旋转动画实例代码
2018/09/11 HTML / CSS
大学生活学习的自我评价
2013/12/03 职场文书
小学生家长评语集锦
2014/01/30 职场文书
2014迎新年晚会策划方案
2014/02/23 职场文书
公证书标准格式
2014/04/10 职场文书
募捐倡议书
2014/04/14 职场文书
企业法人代表证明书
2014/09/27 职场文书
中学生社会实践教育活动总结
2015/05/06 职场文书
python非标准时间的转换
2021/07/25 Python