标签:fr 提取 ctime Notice 指定 hj rf 日志 hjj
如下日志,提取出Notice:开头的行中的ctime的值,然后求平均数
a.log日志文件
Notice:hjhj hjj hj hj j h j hh ctime:35s fr fr f rf r fr f r Notice:hjhj hjj hj hj j h j hh ctime:35s fr fr f rf r fr f r 112222221111111122233331111111111111 Notice:hjhj hjj hj hj j h j hh ctime:35s fr fr f rf r fr f r hhhhhhhhhhhhhhhhhhhhhhhhh Notice:hjhj hjj hj hj j h j hh ctime:35s fr fr f rf r fr f r Notice:hjhj hjj hj hj j h j hh ctime:35s fr fr f rf r fr f r Notice:hjhj hjj hj hj j h j hh ctime:35s fr fr f rf r fr f r Notice:hjhj hjj hj hj j h j hh ctime:35s fr fr f rf r fr f r Notice:hjhj hjj hj hj j h j hh ctime:35s fr fr f rf r fr f r Notice:hjhj hjj hj hj j h j hh ctime:35s fr fr f rf r fr f r Notice:hjhj hjj hj hj j h j hh ctime:35s fr fr f rf r fr f r Notice:hjhj hjj hj hj j h j hh ctime:35s fr fr f rf r fr f r Notice:hjhj hjj hj hj j h j hh ctime:35s fr fr f rf r fr f r Notice:hjhj hjj hj hj j h j hh ctime:35s fr fr f rf r fr f r
解决方法
#coding=utf-8 import re def gettime(l): num="" index=int(l.find("ctime"))+6 while(True): if(l[index]=="s"): break else: num+=l[index] index+=1 return int(num) t=0 count=0 with open("a.log","r") as f: while(True): l=f.readline() if(not l): break if(re.match("Notice:",l)): t+=gettime(l) count+=1 average=t/count print(average)
输出
35.0
标签:fr,提取,ctime,Notice,指定,hj,rf,日志,hjj 来源: https://www.cnblogs.com/sea-stream/p/11273039.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。