网站首页 > 技术文章 正文
文本文件格式:
需求:图片中截图部分,用荧光笔圈的后六列,所有数值÷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()
猜你喜欢
- 2024-11-17 JavaScript爆款进度条组件—NProgress.js
- 2024-11-17 2021 EHA | 急性髓系白血病治疗方案与预后因素的探索
- 2024-11-17 手把手教你发布vue组件到npm(vue怎么发布)
- 2024-11-17 n8n:一个可扩展的工作流程自动化工具
- 2024-11-17 如何解决使用npm安装vue脚手架报错问题?20个常见解决方法汇总!
- 2024-11-17 圆锥曲线:代点法求轨迹方程(代入法求圆的轨迹方程)
- 2024-11-17 ubuntu安装最新的node(ubuntu 安装nodejs npm)
- 2024-11-17 遗传学特征对老年急性髓系白血病患者MRD和移植结局的影响
- 2024-11-17 yarn更换为淘宝镜像(npm改淘宝镜像)
- 2024-11-17 Node.js 版本管理工具 n 最全使用手册
- 最近发表
- 标签列表
-
- cmd/c (57)
- c++中::是什么意思 (57)
- sqlset (59)
- ps可以打开pdf格式吗 (58)
- phprequire_once (61)
- localstorage.removeitem (74)
- routermode (59)
- vector线程安全吗 (70)
- & (66)
- java (73)
- org.redisson (64)
- log.warn (60)
- cannotinstantiatethetype (62)
- js数组插入 (83)
- resttemplateokhttp (59)
- gormwherein (64)
- linux删除一个文件夹 (65)
- mac安装java (72)
- reader.onload (61)
- outofmemoryerror是什么意思 (64)
- flask文件上传 (63)
- eacces (67)
- 查看mysql是否启动 (70)
- java是值传递还是引用传递 (58)
- 无效的列索引 (74)