zoukankan      html  css  js  c++  java
  • 用python读文件如.c文件生成excel文件

      记录一下,如何实现的,代码如下:

      

    #!/usr/bin/env python
    # coding=utf-8
    # 打开文件
    import xlwt
    import re
    import sys
     
    bookfile = xlwt.Workbook(encoding='utf-8')
    
    table = bookfile.add_sheet('data',cell_overwrite_ok=True)
    
    table_head = ['日志路径', '触发条件','级别','内容']
    
    for i in range(len(table_head)):
        table.write(0, i, table_head[i])
    
    
    file = open(sys.argv[1])
    
    row = 1
    
    while True:
        # 读取一行内容
        text = file.readline()
    
        #searchObj = re.search( r'[a-zA-Z0-9]*.log', text, re.M|re.I)
    
        pattern = re.compile(r'[a-zA-Z0-9]*.log')   # 查找数字
        searchObj = pattern.findall(text)
        
    
    
        #str1 = searchObj.group()
    
        if searchObj:
            #print (searchObj)
            
            str = [["/home/spv/log/",sys.argv[2],sys.argv[3],sys.argv[4]]]
            str[0][0] += searchObj[0]
            print("str:%s" % str[0][0])
            for col in range(0,4):
                table.write( row, col, str[0][col] )
                bookfile.save("data.xls")
    
            row += 1
    
        # 判断是否读到内容
        if not text:
            break
    
        # 每读取一行的末尾已经有了一个 `
    `
        #print(text, end="")
        #print(text)
    
    # 关闭文件
    file.close()

      其实,但生成的excel很不规范,因为有些数据没法统计,生成excel后,需要手动修改,一般用的多的地方是:xml和excel的相互转换,命令如下:python3 ldw.py itsmwn.c 查询 debug 工单,其实跟C语言的命令行参数一样,都从0开始,

      sys.argv[0]是ldw.py,

      sys.argv[1]是itsmwn.c,要读取的文件名

      查询 debug 工单分别对应生成的excel的第二、三和四列的内容

      运行结果如下:

      

      主要还是统计日志路径,后面三列还是需要根据代码内容进行修改

  • 相关阅读:
    MongoDB CRUD操作
    mongodb的help类
    MongoDB(六):使用C#代码连接并读取MongoDB数据库
    MongoDB下载、安装、配置、使用,如何下载MongoDB数据库,MongoDB入门
    MongoDB(一):关系型数据库和非关系型数据库
    浅谈.NET中闭包
    JavaScript 对象
    python连接数据库
    个人总结
    课堂建议
  • 原文地址:https://www.cnblogs.com/liudw-0215/p/9991065.html
Copyright © 2011-2022 走看看