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单体模式的几种常见实现方法详解
Jul 28 Python
python调用API实现智能回复机器人
Apr 10 Python
Python3实现的Mysql数据库操作封装类
Jun 06 Python
Python进阶之自定义对象实现切片功能
Jan 07 Python
解决PyCharm不运行脚本,而是运行单元测试的问题
Jan 17 Python
python去重,一个由dict组成的list的去重示例
Jan 21 Python
python3.6实现学生信息管理系统
Feb 21 Python
Python 使用 PyMysql、DBUtils 创建连接池提升性能
Aug 14 Python
Python实现二叉树的最小深度的两种方法
Sep 30 Python
pygame实现贪吃蛇游戏(下)
Oct 29 Python
Pycharm中安装wordcloud等库失败问题及终端通过pip安装的Python库如何添加到Pycharm解释器中(推荐)
May 10 Python
python如何运行js语句
Sep 09 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上的memcache和memcached两个pecl库
2010/03/29 PHP
使用session判断用户登录用户权限(超简单)
2013/06/08 PHP
Yii 快速,安全,专业的PHP框架
2014/09/03 PHP
Chrome Web App开发小结
2014/09/04 PHP
php中fsockopen用法实例
2015/01/05 PHP
PHP实现从远程下载文件的方法
2015/03/12 PHP
php中array_multisort对多维数组排序的方法
2020/06/21 PHP
PHP简单生成缩略图相册的方法
2015/07/29 PHP
详解PHP中的mb_detect_encoding函数使用方法
2015/08/18 PHP
Yii2 hasOne(), hasMany() 实现三表关联的方法(两种)
2017/02/15 PHP
改进版通过Json对象实现深复制的方法
2012/10/24 Javascript
热点新闻滚动特效的js代码
2013/08/17 Javascript
javascript中eval和with用法实例总结
2015/11/30 Javascript
JavaScript的React框架中的JSX语法学习入门教程
2016/03/05 Javascript
早该知道的7个JavaScript技巧
2016/06/21 Javascript
基于SpringMVC+Bootstrap+DataTables实现表格服务端分页、模糊查询
2016/10/30 Javascript
jQuery使用siblings获取某元素所有同辈(兄弟姐妹)元素用法示例
2017/01/30 Javascript
easyui-edatagrid.js实现回车键结束编辑功能的实例
2017/04/12 Javascript
nodejs个人博客开发第七步 后台登陆
2017/04/12 NodeJs
angularjs实现首页轮播图效果
2017/04/14 Javascript
jQuery实现的电子时钟效果完整示例
2018/04/28 jQuery
JS 实现分页打印功能
2018/05/16 Javascript
vue使用技巧及vue项目中遇到的问题
2018/06/04 Javascript
详解vue配置后台接口方式
2019/03/29 Javascript
[00:35]DOTA2上海特级锦标赛 VP战队宣传片
2016/03/04 DOTA
python在linux中输出带颜色的文字的方法
2014/06/19 Python
python读取TXT到数组及列表去重后按原来顺序排序的方法
2015/06/26 Python
Python编程中的for循环语句学习教程
2015/10/14 Python
Python实现图片转字符画的示例代码
2017/08/21 Python
python2 与python3的print区别小结
2018/01/16 Python
Python实现的视频播放器功能完整示例
2018/02/01 Python
分享8个非常流行的 Python 可视化工具包
2019/06/05 Python
CSS3样式linear-gradient的使用实例
2017/01/16 HTML / CSS
联想德国官网:Lenovo Germany
2018/07/04 全球购物
工伤赔偿协议书范本
2014/04/15 职场文书
合作协议书范本
2014/10/25 职场文书