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


Posted in Python onDecember 15, 2018

本文实例为大家分享了一组典型数据格式转换的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 相关文章推荐
浅谈python多线程和队列管理shell程序
Aug 04 Python
浅谈Python 对象内存占用
Jul 15 Python
分享Pycharm中一些不为人知的技巧
Apr 03 Python
Python利用正则表达式实现计算器算法思路解析
Apr 25 Python
python装饰器常见使用方法分析
Jun 26 Python
python使用tomorrow实现多线程的例子
Jul 20 Python
Python实现将蓝底照片转化为白底照片功能完整实例
Dec 13 Python
python绘制彩虹图
Dec 16 Python
解决Jupyter无法导入已安装的 module问题
Apr 17 Python
python中sklearn的pipeline模块实例详解
May 21 Python
python删除某个目录文件夹的方法
May 26 Python
pytorch 实现多个Dataloader同时训练
May 29 Python
python判断计算机是否有网络连接的实例
Dec 15 #Python
Django model反向关联名称的方法
Dec 15 #Python
django orm 通过related_name反向查询的方法
Dec 15 #Python
关于Django ForeignKey 反向查询中filter和_set的效率对比详解
Dec 15 #Python
django 外键model的互相读取方法
Dec 15 #Python
Django之Mode的外键自关联和引用未定义的Model方法
Dec 15 #Python
python调用java的jar包方法
Dec 15 #Python
You might like
用php来改写404错误页让你的页面更友好
2013/01/24 PHP
PHP 读取Postgresql中的数组
2013/04/14 PHP
php实现的顺序线性表示例
2019/05/04 PHP
JQuery Tips(2) 关于$()包装集你不知道的
2009/12/14 Javascript
JSONP 跨域共享信息
2012/08/16 Javascript
使用JS CSS去除IE链接虚线框的三种方法
2013/11/14 Javascript
javascript计时器事件使用详解
2014/01/07 Javascript
JavaScript代码应该放在HTML代码哪个位置比较好?
2014/10/16 Javascript
node.js中的events.emitter.removeListener方法使用说明
2014/12/10 Javascript
JavaScript 对象深入学习总结(经典)
2015/09/29 Javascript
jquery简单倒计时实现方法
2015/12/18 Javascript
Bootstrap每天必学之附加导航(Affix)插件
2016/04/25 Javascript
基于Bootstrap 3 JQuery及RegExp的表单验证功能
2017/02/16 Javascript
解决html-jquery/js引用外部图片时遇到看不了或出现403的问题
2017/09/22 jQuery
vue-router实现组件间的跳转(参数传递)
2017/11/07 Javascript
JavaScript实现百度搜索框效果
2020/03/26 Javascript
jQuery实现简单的Ajax调用功能示例
2019/02/15 jQuery
JS实现图片懒加载(lazyload)过程详解
2020/04/02 Javascript
[45:52]2018DOTA2亚洲邀请赛 4.1小组赛 A组加赛 LGD vs Liquid
2018/04/02 DOTA
[01:27:43]VGJ.S vs TNC Supermajor 败者组 BO3 第三场 6.6
2018/06/07 DOTA
python直接访问私有属性的简单方法
2016/07/25 Python
python 随机数使用方法,推导以及字符串,双色球小程序实例
2017/09/12 Python
Django使用unittest模块进行单元测试过程解析
2019/08/02 Python
关于python导入模块import与常见的模块详解
2019/08/28 Python
使用pytorch搭建AlexNet操作(微调预训练模型及手动搭建)
2020/01/18 Python
澳大利亚免息网上购物:Shop Zero
2016/09/17 全球购物
Linux管理员面试经常问道的相关命令
2013/04/29 面试题
教师政风行风评议心得体会
2014/10/21 职场文书
2014年终个人工作总结
2014/11/07 职场文书
销售2014年度工作总结
2014/12/08 职场文书
2015新年联欢晚会开场白
2014/12/14 职场文书
上班迟到检讨书
2015/05/06 职场文书
阿甘正传观后感
2015/06/01 职场文书
2015年医院保卫科工作总结
2015/07/23 职场文书
MySql 缓存查询原理与缓存监控和索引监控介绍
2021/07/02 MySQL
vue自定义右键菜单之全局实现
2022/04/09 Vue.js