利用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 相关文章推荐
对pandas的dataframe绘图并保存的实现方法
Aug 05 Python
python实现随机梯度下降(SGD)
Mar 24 Python
python实现飞机大战
Sep 11 Python
python实现祝福弹窗效果
Apr 07 Python
Python正则表达式匹配数字和小数的方法
Jul 03 Python
python opencv将图片转为灰度图的方法示例
Jul 31 Python
用Cython加速Python到“起飞”(推荐)
Aug 01 Python
Python函数参数类型及排序原理总结
Dec 19 Python
python opencv 图像边框(填充)添加及图像混合的实现方法(末尾实现类似幻灯片渐变的效果)
Mar 09 Python
Pycharm安装第三方库失败解决方案
Nov 17 Python
python实现图像高斯金字塔的示例代码
Dec 11 Python
详解Python openpyxl库的基本应用
Feb 26 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 Zip压缩 在线对文件进行压缩的函数
2010/05/26 PHP
ThinkPHP实现将本地文件打包成zip下载
2014/06/26 PHP
php实现对象克隆的方法
2015/06/20 PHP
thinkphp autoload 命名空间自定义 namespace
2015/07/17 PHP
yii2中添加验证码的实现方法
2016/01/09 PHP
js实现全屏漂浮广告移入光标停止移动
2013/12/02 Javascript
jQuery使用元素属性attr赋值详解
2015/02/27 Javascript
javascript相关事件的几个概念
2015/05/21 Javascript
jQuery实用技巧必备(上)
2015/11/02 Javascript
javascript对象的创建和访问
2016/03/08 Javascript
详解js中的apply与call的用法
2016/07/30 Javascript
javascript数字验证的实例代码(推荐)
2016/08/20 Javascript
通过JS获取Request.QueryString()参数的值实现方法
2016/09/27 Javascript
vue中用动态组件实现选项卡切换效果
2017/03/25 Javascript
详解vue的数据binding绑定原理
2017/04/12 Javascript
浅谈Node.js之异步流控制
2017/10/25 Javascript
Vue 将后台传过来的带html字段的字符串转换为 HTML
2018/03/29 Javascript
webpack 模块热替换原理
2018/04/09 Javascript
修改npm全局安装模式的路径方法
2018/05/15 Javascript
Javascript实现鼠标移入方向感知
2020/06/24 Javascript
JS可断点续传文件上传实现代码解析
2020/07/30 Javascript
[01:07:22]2014 DOTA2华西杯精英邀请赛 5 24 DK VS VG加赛
2014/05/26 DOTA
[01:32]dota2拉比克至宝(222)
2018/12/20 DOTA
使用Python获取CPU、内存和硬盘等windowns系统信息的2个例子
2014/04/15 Python
pycharm 使用心得(九)解决No Python interpreter selected的问题
2014/06/06 Python
python+tkinter编写电脑桌面放大镜程序实例代码
2018/01/16 Python
小学毕业感言150字
2014/02/05 职场文书
大学生学习2014全国两会心得体会
2014/03/13 职场文书
买卖车协议书
2014/04/21 职场文书
委托证明书
2014/09/17 职场文书
学校党的群众路线教育实践活动领导班子对照检查材料
2014/09/25 职场文书
2015年度电厂个人工作总结
2015/05/13 职场文书
红色经典电影观后感
2015/06/18 职场文书
总结Python常用的魔法方法
2021/05/25 Python
Pygame Time时间控制的具体使用详解
2021/11/17 Python
Go web入门Go pongo2模板引擎
2022/05/20 Golang