python实现一组典型数据格式转换

yipeiwu_com6年前Python基础

本文实例为大家分享了一组典型数据格式转换的python实现代码,供大家参考,具体内容如下

有一组源数据,第一行会是个日期数据,第二行标明字段,再接下来是两行数据行。

1018 14:31:30.193
Type Succ Fail
sour_sm 1308 1205
data_sm 2205 3301
1019 16:32:30.201
Type Succ Fail
data_sm 3308 2206
data_sm 1765 1105
1020 18:00:00.203
Type Succ Fail
sour_sm 7804 1105
data_sm 2976 1300

要转换成数据

Time               Type    Succ Fail  Total
1018 14:31:30.193  sour_sm 1308 1205  2513
1018 14:31:30.193  data_sm 2205 3301  5506
1019 16:32:30.201  data_sm 3308 2206  5514
1019 16:32:30.201  data_sm 1765 1105  2870
1020 18:00:00.203  sour_sm 7804 1105  8909
1020 18:00:00.203  data_sm 2976 1300  4276

这个时候可以使用Python来处理,代码如下:

# coding = utf-8
fd = open(r"output.txt", "w", encoding="utf-8")
fd.write("%s\t\t\t\t%s\t%s\t%s\t%s\n" % ("Time", "Type", "Succ", "Fail", "Total"))
 
with open(r"data.txt", "r", encoding="utf-8") as fd1:
 lines = fd1.readlines()
 time1 = lines[0::4]
 data1 = lines[2::4]
 data2 = lines[3::4]
 for (i, line) in enumerate(time1):
 Time = line.strip()
 Type_1 = data1[i].strip().split()[0]
 Succ_1 = data1[i].strip().split()[1]
 Fail_1 = data1[i].strip().split()[2]
 Total_1 = str(int(Succ_1) + int(Fail_1))
 Type_2 = data2[i].strip().split()[0]
 Succ_2 = data2[i].strip().split()[1]
 Fail_2 = data2[i].strip().split()[2]
 Total_2 = str(int(Succ_2) + int(Fail_2))
 fd.write("%s\t%s\t%s\t%s\t%s\n" % (Time, Type_1, Succ_1, Fail_1, Total_1))
 fd.write("%s\t%s\t%s\t%s\t%s\n" % (Time, Type_2, Succ_2, Fail_2, Total_2))
fd.close()

生成文件格式如下,基本上满足了需求。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python单例模式获取IP代理的方法详解

引言 最近在学习python,先说一下我学Python得原因,一个是因为它足够好用,完成同样的功能,代码量会比其他语言少很多,有大量的丰富的库可以使用,基本上前期根本不需要自己造什么轮子...

python实现SOM算法

python实现SOM算法

算法简介 SOM网络是一种竞争学习型的无监督神经网络,将高维空间中相似的样本点映射到网络输出层中的邻近神经元。 训练过程简述:在接收到训练样本后,每个输出层神经元会计算该样本与自身携带的...

谈一谈基于python的面向对象编程基础

谈一谈基于python的面向对象编程基础

活在当下的程序员应该都听过“面向对象编程”一词,也经常有人问能不能用一句话解释下什么是“面向对象编程”,我们先来看看比较正式的说法。 把一组数据结构和处理它们的方法组成对象(object...

Flask框架中密码的加盐哈希加密和验证功能的用法详解

密码加密简介 密码存储的主要形式: 明文存储:肉眼就可以识别,没有任何安全性。 加密存储:通过一定的变换形式,使得密码原文不易被识别。 密码加密的几类方式: 明文转码加...

Python数据分析:手把手教你用Pandas生成可视化图表的教程

Python数据分析:手把手教你用Pandas生成可视化图表的教程

大家都知道,Matplotlib 是众多 Python 可视化包的鼻祖,也是Python最常用的标准可视化库,其功能非常强大,同时也非常复杂,想要搞明白并非易事。但自从Python进入3...