Python实现读取文件最后n行的方法
作者:design321 发布时间:2023-08-02 10:33:32
标签:Python,读取,文件
本文实例讲述了Python实现读取文件最后n行的方法。分享给大家供大家参考,具体如下:
# -*- coding:utf8-*-
import os
import time
import datetime
import math
import string
def get_last_line(inputfile) :
filesize = os.path.getsize(inputfile)
blocksize = 1024
dat_file = open(inputfile, 'r')
last_line = ""
lines = dat_file.readlines()
count = len(lines)
if count>60:
num=60
else:
num=count
i=1;
lastre = []
for i in range(1,(num+1)):
if lines :
n = -i
last_line = lines[n].strip()
#print "last line : ", last_line
dat_file.close()
#print i
lastre.append(last_line)
return lastre
#获取最后一行的结果
re = get_last_line('../update/log/rtime/rtime20130805.log')
print len(re)
for n in re:
strlist = n.split(' ')
if strlist[1] == 'ok' and string.atoi(strlist[2])>1000:
print '数据条数正常'
print 'OK'
else:
print '数据太少,检查发邮件'
以上处理和日志文件格式为
2013-08-05 16:09:30 ok 1673
2013-08-05 16:10:34 ok 1628
2013-08-05 16:11:55 ok 71
2013-08-05 16:13:02 ok 1441
2013-08-05 16:14:06 ok 1634
2013-08-05 16:15:10 ok 1717
2013-08-05 16:16:14 ok 1687
2013-08-05 16:17:18 ok 1642
2013-08-05 16:18:27 ok 1655
2013-08-05 16:19:33 ok 1655
读取最后一行:
#返回文件最后一行函数
def get_last_line(inputfile) :
filesize = os.path.getsize(inputfile)
blocksize = 1024
dat_file = open(inputfile, 'r')
last_line = ""
if filesize > blocksize :
maxseekpoint = (filesize // blocksize)
dat_file.seek((maxseekpoint-1)*blocksize)
elif filesize :
#maxseekpoint = blocksize % filesize
dat_file.seek(0, 0)
lines = dat_file.readlines()
if lines :
last_line = lines[-1].strip()
#print "last line : ", last_line
dat_file.close()
return last_line
希望本文所述对大家Python程序设计有所帮助。


猜你喜欢
- var date = new Date('2016-11-11 11:11:11');document.write(date
- 什么是转义字符在 HTML 中 <、>、& 等字符有特殊含义(<,> 用于标签中,& 用于转义),他
- 本文实例分析了python对json的相关操作。分享给大家供大家参考,具体如下:什么是json:JSON(JavaScript Object
- 本文实例讲述了JavaScript数据结构中串的表示与应用。分享给大家供大家参考,具体如下:类似于线性表的顺序存储结构,用一组地址连续的存储
- 爬虫具有域名切换、信息收集以及信息存储功能。这里讲述如何构建基础的爬虫架构。1、urllib库:包含从网络请求数据、处理cookie、改变请
- 如下所示:#encoding=utf-8print '中国'#字典的一键多值print'方案一 list作为dict
- 老板由于事务繁忙无法经常亲临教研室,于是让我搞个监控系统,让他在办公室就能看到教研室来了多少人。o(>﹏<)o|||最初我的想法
- 机器学习分两大类,有监督学习(supervised learning)和无监督学习(unsupervised learning)。有监督学习
- 概述Mysql的Replication(复制)是一个异步的复制过程,从一个 Mysql instance(我们称之为 Master)复制到另
- 如果你搞过ASP的开发,你就会为ASP中没有好的完整的调试环境而头疼不己。我收集了网上相关所有信息提示,想给它做成单机的ASP开发错误提示软
- 前言JavaScript语言中有一个非常重要又难以掌握,近似神话的概念-闭包。对于有一点JavaScript使用经验但从未真正理解闭包概念的
- 通过学习私有函数与私有变量,可以更好的完善 类的开发 ,从而丰满我们的场景与实现方案。什么是私有函数和私有变量私有函数与私有变量中的私有是什
- 一、前言在调用函数时,大多数情况下,主调函数和被调函用之间有数据传递关系,这就是有参数的函数形式。函数参数的作用是传递数据给函数使用,函数利
- 一、数组的创建方式一var a = new Array(); a[0]="wo"
- 追本溯源,从使用开始首先看一下我们通常是如何使用微软自带的认证,一般在Startup里面配置我们所需的依赖认证服务,这里通过JWT的认证方式
- Sql Server的存储过程是一个被命名的存储在服务器上的Transacation-Sql语句集合,是封装重复性工作的一种方法,它支持用户
- 在我们使用pyCharm编辑器中有一些方法或者库都是需要我们自行安装,下面就来安装一波安装第三方库有俩个方法使用pip命令来进行安装(pip
- 一、建立文件,保存数据1.使用python中内置的open函数 打开txt文件#mode 模式#w 只能操作写入 r 只能读取 a 向文件追
- 前言gif图就是动态图,它的原理和视频有点类似,也是通过很多静态图片合成的.本篇文章主要介绍,如何利用Python快速合成gif图,主要利用
- 环境 MySQL 5.1 + 命令行工具 问题 MySQL表字段设置默认值 解决 --SQL: CREATE TABLE test( i_a