今天做了一个使用python来提取日志内容,并导出excel的小脚本,代码写的不好,新手勿喷,下面进行一下总结。
需求如下:
1.读取文件行数,并作出excel表
2.读取文件中第7个字段,累加求和,求平均数。并找出其中最大的。做excel表。
3.找出文件中特定字符出现次数,统计,做excel表。
4.自动生成excel名称为实时时间。
读取文件行数第一想法就是 wc -l,虽然python中可以调用shell命令,但毕竟不太好,所以这里用python逐行读取文件并进行累加,算出文件行数。。。也许有些愚蠢,但是目前我也就这水平了。对于读取文件第七个字段,我这里正好按行读取文件,将每一行split一下。注意,这里split之后生成的是一个列表,列表的每一个元素都是string,而我要进行累加的操作,所以要强制转换为int。因为使用python时间不长,在解决这个问题的时候,第一想法还是python里调用awk或者cut来解决问题。。。看来需要转换思维啊。而下面要找出特定字符的问题这种思维就显得更严重了,因为大家都知道grep一下是多么方便,我还是强用了一下python,将每行split一下之后,选取特定字段来判断是不是这个字符,之后计数器累加。。。可能是有些愚蠢吧。。。。
接下来说说制作excel表,这个是偶尔从刘大神的一本书里看见的,所以这里笑用一下,都是套路,代码里会有。
对于系统时间的获得,就是一行代码。
这里顺便说一下,再制作excel表的时候,选取哪个范围的数据做表是有要求的,应该只能选取一行或一列,而不能对角线选取一个区域,若想一个表里多组数据,那就得多次加载数据,每次加载一组,这样就不会出问题了。否则会报出来看不懂的错误。。。。
本文出自 “学习讨论” 博客,请务必保留此出处http://ltm250.blog.51cto.com/4695970/1613415
python 读取文件 并实现文件相关操作最后导出excel
原文地址:http://ltm250.blog.51cto.com/4695970/1613415