返回顶部
首页 > 资讯 > 后端开发 > Python >python对大文件的增量读取
  • 128
分享到

python对大文件的增量读取

增量大文件python 2023-01-31 05:01:40 128人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

欢迎关注我的豆瓣Http://www.douban.com/note/484517776/  对于很多大文件的增量读取,如果遍历每一行比对历史记录的输钱或者全都加载到内存通过历史记录的索引查找,是非常浪费资源的,网上有很多人的技术博客都是写

欢迎关注我的豆瓣Http://www.douban.com/note/484517776/  

对于很多大文件的增量读取,如果遍历每一行比对历史记录的输钱或者全都加载到内存通过历史记录的索引查找,是非常浪费资源的,网上有很多人的技术博客都是写的用for循环readline以及一个计数器去增量读取,这样是十分脑残的,假如文件很大,遍历一次太久。
 我们需要了解获取文件句柄的基本理论,其中包含的指针操作等。
 原理是这样子,linux的文件描述符的struct里有一个f_pos的这么个属性,里面存着文件当前读取位置,通过这个东东经过vfs的一系列映射就会得到硬盘存储的位置了,所以很直接,很快。
 以下是利用python实战代码,核心函数tell(),seek(). 也是调用的系统调用seek tell

seek()的三种模式:

   (1)f.seek(p,0)  移动当文件第p个字节处,绝对位置

   (2)f.seek(p,1)  移动到相对于当前位置之后的p个字节

   (3)f.seek(p,2)  移动到相对文章尾之后的p个字节

tell():
   返回当前文件的读取位置。
代码:
#!/usr/bin/Python
fd=open("test.txt",'r') #获得一个句柄
for i in xrange(1,3): #读取三行数据
   fd.readline()
label=fd.tell() #记录读取到的位置
fd.close() #关闭文件
#再次阅读文件
fd=open("test.txt",'r') #获得一个句柄
fd.seek(label,0)# 把文件读取指针移动到之前记录的位置
fd.readline() #接着上次的位置继续向下读取



后续:今儿有一人问我如何得知这个大文件行数,以及变化,我的想法是
方法1:
可以去遍历'\n'字符。
方法2:
从一开始就用for循环fd.readline()进行计数,然后变化的部分(用上文说的seek、tell函数做)再用for循环fd.readline()进行统计增加行数。

--结束END--

本文标题: python对大文件的增量读取

本文链接: https://lsjlt.com/news/188716.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • python对大文件的增量读取
    欢迎关注我的豆瓣http://www.douban.com/note/484517776/  对于很多大文件的增量读取,如果遍历每一行比对历史记录的输钱或者全都加载到内存通过历史记录的索引查找,是非常浪费资源的,网上有很多人的技术博客都是写...
    99+
    2023-01-31
    增量 大文件 python
  • Python 读取大文件
    在处理大数据时,有可能会碰到好几个 G 大小的文件。如果通过一些工具(例如:NotePad++)打开它,会发生错误,无法读取任何内容。 那么,在 Python 中,如何快速地读取这些大文件呢? | 版权声明:一去、二三里,未经博...
    99+
    2023-01-31
    大文件 Python
  • python读取大文件
    python读取文件对各列进行索引 可以用readlines, 也可以用readline, 如果是大文件一般就用readlined={} a_in = open("testfile.txt", "r") for line in a_in...
    99+
    2023-01-31
    大文件 python
  • Python读取大文件(GB)
    最近处理文本文档时(文件约2GB大小),出现memoryError错误和文件读取太慢的问题,后来找到了两种比较快Large File Reading 的方法,本文将介绍这两种读取方法。 Preliminary   我们谈到“...
    99+
    2023-01-31
    大文件 Python GB
  • 强悍的 Python —— 读取大文件
    Python 环境下文件的读取问题,请参见拙文 Python 基础 —— 文件 这是一道著名的 Python 面试题,考察的问题是,Python 读取大文件和一般规模的文件时的区别,也即哪些接口不适合读取大文件。 1. rea...
    99+
    2023-01-31
    强悍 大文件 Python
  • python怎么读取大文件
    这篇文章主要介绍“python怎么读取大文件”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“python怎么读取大文件”文章能帮助大家解决问题。可以通过两种方法利用python读取大文件:第一种是利用...
    99+
    2023-06-30
  • python之批量读取文件
    python的os模块可以实现普遍的操作系统功能,并且和平台无关。以下为实现根目录下文件的批量读取。 os.listdir(dirname)可以列出dirname下的目录和文件,依次读取相应的文件即可。 # -*- coding...
    99+
    2023-01-31
    批量 文件 python
  • Python按行读取文件的实现方法【小文件和大文件读取】
    本文实例讲述了Python按行读取文件的实现方法。分享给大家供大家参考,具体如下: 小文件: #coding=utf-8 #author: walker #date: 2013-12-30 #funct...
    99+
    2022-06-04
    文件 大文件 方法
  • 怎么中python读取大文件
    本篇文章为大家展示了怎么中python读取大文件,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。python的五大特点是什么python的五大特点:1.简单易学,开发程序时,专注的是解决问题,而不是搞...
    99+
    2023-06-14
  • 如何使用Python读取大数据中的对象文件?
    在当今的数据时代,大数据已经成为了一种趋势。大数据存储的文件类型也越来越多,其中对象文件是一种常见的文件类型。Python作为一种流行的编程语言,自然也可以用来读取大数据中的对象文件。 本文将介绍如何使用Python读取大数据中的对象文件。...
    99+
    2023-10-26
    对象 文件 大数据
  • Python读取大量Excel文件并跨文件批量计算平均值的方法
    本文介绍基于Python语言,实现对多个不同Excel文件进行数据读取与平均值计算的方法~ 编程网推荐学习python书籍   首先,让我们来看一下具体需求:目...
    99+
    2023-02-02
    Python读取大量Excel文件 python批量读取Excel文件 python读取Excel文件
  • python简单读取大文件的方法
    本文实例讲述了python简单读取大文件的方法。分享给大家供大家参考,具体如下: Python读取大文件(GB级别)采用的办法很简单: with open(...) as f: for line in...
    99+
    2022-06-04
    大文件 简单 方法
  • Python实现读取大量Excel文件并跨文件批量计算平均值
    本文介绍基于Python语言,实现对多个不同Excel文件进行数据读取与平均值计算的方法。 首先,让我们来看一下具体需求:目前有一个文件夹,其中存放了大量Excel文件;文件名称是每...
    99+
    2023-02-02
    Python读取Excel Python计算平均值 Python Excel 平均值
  • python如何流式读取大文件
    这篇文章将为大家详细讲解有关python如何流式读取大文件,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。如何流式读取大文件使用with…open…可以从文件中读...
    99+
    2023-06-27
  • python文件的读取
    python文件的读取 1.文件的读取1.read() 读取整个文件2.readline() 每次读取一行文件3. readlines() 读取文件的所有行 2.文件的写入1.以"x"方式...
    99+
    2023-09-01
    python 数据分析 pandas numpy 文件读取
  • python怎么批量读取dat文件
    你可以使用glob模块来批量读取.dat文件。下面是一个示例代码: import glob file_list = glob.gl...
    99+
    2024-02-29
    python
  • python怎么批量读取文件名
    在Python中,可以使用os模块来批量读取文件名。具体步骤如下: 导入os模块:import os 使用os.listdir()...
    99+
    2024-02-29
    python
  • Golang文件读取操作:快速读取大文件的技巧
    Golang文件读取操作:快速读取大文件的技巧,需要具体代码示例 在Golang程序设计中,文件读取是一个非常常见的操作。但当需要读取大文件时,通常是一件比较耗费时间和资源的操作。因此,如何快速读取大文件是一...
    99+
    2024-01-19
    大文件 Golang 文件读取
  • python大批量读写.doc文件的解决
    python大批量读写.doc文件分析 前言: java语言读写.doc的出现乱码问题:       大家都知道当我们利用java语言读写.doc文件时,无论是利用流的方式将.doc文件的内容输出到控制台(console),还是将其写到其...
    99+
    2023-01-31
    文件 python doc
  • 【Python】json文件的读取
    文章目录 1. json简介2.json的使用规范3.json文件的书写4.json文件的读取 1. json简介 JSON(JavaScript Object Notation)是一...
    99+
    2023-10-23
    python json 开发语言
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作