python小白 求助 读取txt文件,并进行数据处理
一个文件夹下有若干个txt文件,内容格式都相同。逐个打开从第32行开始读内容格式如下:0.01112923CDRxd80000FFFF0B2260FE0.01147651...
一个文件夹下有若干个txt文件,内容格式都相同。
逐个打开 从第32行开始读
内容格式如下:
0.011129 2 3CD Rx d 8 00 00 FF FF 0B 22 60 FE
0.011476 5 1E7 Rx d 8 02 19 FF 65 FF 80 01 00
0.011507 7 1E7 Rx d 8 02 19 FF 65 FF 80 01 00
0.011593 2 40D Rx d 8 23 48 30 3C 3B 08 55 48
0.011598 4 32D Rx d 8 7F 24 09 00 7F 40 00 86
0.012584 2 44D Rx d 8 21 86 21 6C 21 6E 41 3B
0.012588 4 40D Rx d 8 23 48 30 3C 3B 08 55 48
(我想应该先用正则函数分割)
分析的话 我举个例子
如果第3列 值是3CD 取最后一次出现这个字符的行(因此这个值可能会出现好多次),并将后面的00 00 FF FF 0B 22 60 FE 由16进制转化为10进制
然后输出一个excle表格
格式是 文件名 3CD 1E7
(txt文件名) (十进制的值 ) (十进制的值) 展开
逐个打开 从第32行开始读
内容格式如下:
0.011129 2 3CD Rx d 8 00 00 FF FF 0B 22 60 FE
0.011476 5 1E7 Rx d 8 02 19 FF 65 FF 80 01 00
0.011507 7 1E7 Rx d 8 02 19 FF 65 FF 80 01 00
0.011593 2 40D Rx d 8 23 48 30 3C 3B 08 55 48
0.011598 4 32D Rx d 8 7F 24 09 00 7F 40 00 86
0.012584 2 44D Rx d 8 21 86 21 6C 21 6E 41 3B
0.012588 4 40D Rx d 8 23 48 30 3C 3B 08 55 48
(我想应该先用正则函数分割)
分析的话 我举个例子
如果第3列 值是3CD 取最后一次出现这个字符的行(因此这个值可能会出现好多次),并将后面的00 00 FF FF 0B 22 60 FE 由16进制转化为10进制
然后输出一个excle表格
格式是 文件名 3CD 1E7
(txt文件名) (十进制的值 ) (十进制的值) 展开
2个回答
展开全部
让写代码给5分,太没诚意了,哈哈,不过还是给你吧,没有测试过,你试试再说吧,执行的时候把最后一行的参数设置成你文件的存放位置就可以了
def file_pro(file_dir):
import os
"""
输入一个文件夹,文件夹下是所有待处理文件
:param file_dir: 待处理的文件所在的文件夹
:return: null
"""
# 获取文件列表
file_list = os.listdir(file_dir)
# 建立结果文件,与程序在同级目录
result_file = open('result.csv', 'a+', encoding='GBK')
for file in file_list:
file_to_pro = file_dir + os.sep + file
result = []
for num, line in enumerate(open(file_to_pro)):
if num >= 32:
if line.split(' ')[2] == '3CD':
result.clear()
result += line.split(' ')[6:]
last_result = file_to_pro + ',3CD,'
for item in result:
last_result += (str(int(item, 16)) + ',')
result_file.writelines(last_result)
file_pro("c:\\")
2019-04-17
展开全部
若干个内容格式都一样的txt全删了留一个不就行了
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |