龙空技术网

python txt文件截取数据处理

大肚皮程序猿 201

前言:

现时你们对“用python读取txt文件”可能比较珍视,各位老铁们都需要剖析一些“用python读取txt文件”的相关文章。那么小编也在网摘上网罗了一些有关“用python读取txt文件””的相关知识,希望姐妹们能喜欢,看官们快快来学习一下吧!

文本文件格式:

需求:图片中截图部分,用荧光笔圈的后六列,所有数值÷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 ref=open("20220511185739.pro")f_w=open("new.txt","w")lst=f.readlines()dict1={}wr=Falseprint(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读取txt文件 #python往txt写入字符串 #python剪切文件