zgfp.net
当前位置:首页 >> 如何用python最快的获取大文件的最后几行 >>

如何用python最快的获取大文件的最后几行

工作中经常会遇到处理日志文件的问题:为了得到日志的最新状态,我们需要获取日志文件的最后部分行来做判断。那么,这种情况下我们应该怎么做呢? 1)常规方法:从前往后依次读取 步骤:open打开日志文件。 读取文件,获取文件的总行数。 遍历所...

应该用readline(),而不是readlines() f0=file('test.txt','r') while True: a=f0.readline() print a if a=='':break python 速度确实不慢,有人测试过readline和sed有一拼

有两种情况,1,文件比较大时,一行一行循环直到最后一行,读取最后一行; targetLine = "";lineNo = 0; while 1: mLine = file.readline(); if not mLine: break; lineNo += 1; if (linecount == lineNO): targetLine = mLine;2, 文件比较小,...

首先需要用open()函数打开文件,然后调用文件指针的readlines()函数,可以将文件的全部内容读入到一个列表当中,列表的每一个元素对应于文件的每一行,如果希望获取文件第k行的内容,只需要对列表索引第k-1个元素即可,因为Python是从0开始计数...

Python没有这样的函数,但是可以巧妙解决: import osmxdPath=r"F:\res\高程点.txt"fpa=open(mxdPath)indexx=0for linea in fpa.readlines(): indexx=indexx+1 linea=linea.replace("\n","") print linea if indexx ==50: breakfpa.close()首先...

代码基于python 2.6。功能已写成函数,用的简单语法,很好懂。 新文件文件名自动附加"_back"。 def readKeys(fileName): keys = [] f = open(fileName, "r") while True: line = f.readline() if not line: break key = line.strip() if key: ke...

以前弄过一些组学的文件,如果是纯文本的话不要用 for..in..语句,用 readlines 读入几千行后再用 readline 处理,如果是 utf8 之类非等长的字节编码的话先按 byte 编码读入文本必要时再解析成别的,最后把文件塞到内存盘再加个多进程。如果要求...

# -*- coding:utf-8 -*-def readfile(tfile): with open(tfile,'r') as f: lines=f.readlines() return lines[-2:] readfile(tfile)读取文件最后2行,关于特定目录下特定文件,有什么要求,可以去看看glob模块

def splitfile(filename,sizelimit,forline=True): size=0 i=1 out=open("%s.%04d"%(filename,i),'w') for line in open(filename): size=size+1 if forline else size+len(line) if(size>sizelimit): size=1 if forline else len(line) out.clo...

Python是亲Linux的语言,所以有一个Linux风格shell对Python开发非常有益 因此,mac ubuntu均可,win下python各种包非常麻烦

网站首页 | 网站地图
All rights reserved Powered by www.zgfp.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com