python txt文件截取数据处理

liftword1个月前 (03-29)技术文章4

文本文件格式:


需求:图片中截图部分,用荧光笔圈的后六列,所有数值÷4取整,保存为原来的格式就可以了。用Python写

实现思路:

1.遍历文本文件,设定处理标志

2.当匹配到指定标题,处理标志设定为真

3.当判断处理标志为真,开始逐行处理文本

4.正则匹配每行数据,匹配为9个为逗号分割得字符串开始取后六位整除并重新写入到数组

5.所有未匹配得数据原封写入新的文本文件,处理后文本替换原来得写入新得文本

代码:

#数组后六位数字整除4自定义函数
def new_lst(a):
    a=a[0].split(",")
    #print(a)
    a=list(map(int,a))
    a_=[]
    for i in range(len(a)):
        if i >2:
            a_.append(int(a[i]/4))
        else:
            a_.append(a[i])
    
    return ",".join(list(map(str,a_)))
#主函数
import re
f=open("20220511185739.pro")
f_w=open("new.txt","w")
lst=f.readlines()
dict1={}
wr=False
print(lst[170])
for i in range(len(lst)):
    if lst[i]=="[Miss.Unit.NPM]\n" or lst[i]=="[Miss.Nozzle.NPM]\n":
        all_lst=[]
        wr=True
    if wr==True:
        str1 = re.findall('[0-9]*,[0-9]*,[0-9]*,[0-9]*,[0-9]*,[0-9]*,[0-9]*,[0-9]*,[0-9]*', lst[i]) #取数字
        if len(str1)>0:
            
            str2=new_lst(str1)
            print(str2+"\n")
            f_w.write(str2+"\n")
        else:
            print(lst[i])
            f_w.write(lst[i])
    else:
        print(lst[i])
        f_w.write(lst[i])
        
    if lst[i]=="\n" and wr:
      
        wr=False
        print(all_lst[1:-2])
        #df=pd.DataFrame(all_lst[2:-1],columns=all_lst[1])
f.close()
f_w.close()

相关文章

Python 中读取、写入和管理文件的基础知识

File 处理是 Python 中每个开发人员都应该掌握的一项基本技能。无论您是在处理文本文件、日志、配置文件,还是二进制数据,了解如何读取、写入和管理文件都是必不可少的。Python 的内置工具使文...

一文掌握Python找到文件操作

阅读文件读取文件的全部内容:with open('example.txt', 'r') as file: content = file.read() print(content)2....

Python文件和异常处理打开、读写和关闭文件详解

文件和异常处理是 Python 编程中非常重要的概念。在本篇文章中,我们将详细讲解如何打开、读写和关闭文件,以及如何处理异常。文件操作在 Python 中,可以使用内置的 open() 函数打开文件。...

小白零基础用Python半小时搞定TXT转PDF!附赠脚本

"原来根本不用充会员!" 昨天我还在为100本TXT电子书无法上传腾讯ima知识库急得跳脚,今天却用60行Python代码实现了全自动转换pdf(全程没花1分钱)。作为一个连安装软件都要百度的新手,这...

Python 文件读写(txt、json、xml、ini)

在进行接口自动化测试时,我们经常需要处理各种格式的文件。熟练掌握对这些文件的读写能力对于提升测试效率至关重要。今天我们就来一起学习如何用Python来操作常见的文件类型,包括文本文件(.txt)、JS...

python初学者系列:windows下载python

合集说明这是一个针对python3初学者的合集,将持续更新。 本合集主要内容是一些代码案例,帮助初学者学习发散,主体包含知识点、结果展示、思路分析、实现流程四大模块。初学者可以根据知识点判断是否继续阅...