利用python 正则 读取txt文件中任意指定字符之间的数据,并保存到excel中 您所在的位置:网站首页 python从文件中读取指定数据的内容的方法 利用python 正则 读取txt文件中任意指定字符之间的数据,并保存到excel中

利用python 正则 读取txt文件中任意指定字符之间的数据,并保存到excel中

2024-07-11 21:58| 来源: 网络整理| 查看: 265

利用 python-正则 读取txt文件中指定字符之间的数据,并保存到excel中 需求:代码:结果:

需求:

从txt文件中读取特定的数据(数据有多组) 数据:[app run time:] [TPS:]后面的数据 并把数据保存到excel中.

部分数据如下:

************************app run time:65.4136ms****************** ****************************TPS:30.57468171756332************************ *********************Communication nums:40**************** ................................................................... ************************app run time:27.8785ms****************** ****************************TPS:32.15706367420178************************ *********************Communication nums:40**************** .... .... ... 代码:

分两步走:

1.读取txt,正则匹配出指定字符,存入 列表中2.将列表中的数据写入excel中

1.导入相应模块, txt文件地址 和 excel保存路径.

import re import xlsxwriter txt_url = r"C:\Users\Administrator\Desktop\data\data3.txt" sava_url = r'C:\Users\Administrator\Desktop\data\data3.xlsx' # 读取txt 并提取指定字符 def readTXT(): with open(txt_url, 'r', encoding='utf-8') as f: content = f.read() # 读取txt文件内容 保存到content中 start = "time:" end = "ms" pattern = re.escape(start) + r'(.*?)' + re.escape(end) #re.escape()函数用于转义start和end字符串中的特殊字符 result1 = re.findall(pattern, content, re.DOTALL) #re.DOTALL标志来让.匹配包括换行符在内的任意字符 start = "TPS:" end = "*" pattern = re.escape(start) + r'(.*?)' + re.escape(end) #re.escape()函数用于转义start和end字符串中的特殊字符 result2 = re.findall(pattern, content, re.DOTALL) #re.DOTALL标志来让.匹配包括换行符在内的任意字符 return result1, result2

2.保存到excel中

def saveExcel(str1, str2): # todo 创建excel文件 xl = xlsxwriter.Workbook(sava_url) # todo 添加sheet sheet = xl.add_worksheet('sheet1') k = -4 j = 0 # todo 往单元格cell添加数据,索引写入 for i in range(len(str1)): if i % 50 == 0: # 数据50一组 k = k + 4 # 每一组数据后 整体表格右移4格 j = 0 # 每一组数据后 重新从0行 开始存入 sheet.write_string(j, k, str1[i]) # j 表示行 k表示 列 sheet.write_string(j, k + 1, str2[i]) #(excel从左上角开始算0行0列) j = j + 1 # 行+1 准备写入下一行 # # todo 设置单元格宽度大小 # sheet.set_column('A:B', 30) # todo 关闭文件 xl.close()

调用函数执行

str1, str2 = readTXT() print('time:',str1) print('TPS:',str2) saveExcel(str1, str2) 结果:

在这里插入图片描述 部分excel数据展示如下 在这里插入图片描述

谢谢阅读,感谢支持!如有错误,请多多指教

在这里插入图片描述



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有