需求:
因需要将一json文件中大量的信息填入一固定格式的Excel表格,单纯的复制粘贴肯定也能完成,但是想偷懒一下,于是借助Python解决问题。
环境:
Windows7 +Python2.7 +Xlwt
具体分析:
原始文件为json列表,列表中有多个字典,生成Excel文件需要将列表中的字典的键值按键对应排列,也就是说,所有为“XX”的键对应的值写在一列,且每个字典中的不同键的键值保证在同一行。
解决思路是,读取json文件,然后遍历字典的键和值,读完第一个字典并写入Excel后换行,读取第二个字典。
代码:
# -*- coding: utf-8 -*- import xlwt import json # 创建excel工作表 workbook = xlwt.Workbook(encoding='utf-8') worksheet = workbook.add_sheet('sheet1') # 设置表头 worksheet.write(0, 0, label='NAME') worksheet.write(0, 1, label='LEN') worksheet.write(0, 2, label='ID') worksheet.write(0, 3, label='OTHER') # 读取json文件 with open('test.json', 'r') as f: data = json.load(f) # 将json字典写入excel # 变量用来循环时控制写入单元格,感觉有更好的表达方式 val1 = 1 val2 = 1 val3 = 1 val4 = 1 for list_item in data: for key, value in list_item.items(): if key == "NAME": worksheet.write(val1, 0, value) val1 += 1 elif key == "LEN": worksheet.write(val2, 1, value) val2 += 1 elif key == "ID": worksheet.write(val3, 2, value) val3 += 1 elif key == "OTHER": worksheet.write(val4, 3, value) val4 += 1 else: pass # 保存 workbook.save('OK.xls')
辅助文件:
test.json [ { "OTHER": "code", "NAME": "whc", "LEN": 100, "ID": "01-0001" }, { "OTHER": "house", "NAME": "ikd", "LEN": 200, "ID": "01-0002" }, { "OTHER": "thank", "NAME": "qxf", "LEN": 300, "ID": "01-0003" }, { "OTHER": "music", "NAME": "kmn", "LEN": 400, "ID": "01-0004" }, { "OTHER": "big", "NAME": "vbf", "LEN": 500, "ID": "01-0005" }, { "OTHER": "over", "NAME": "wsr", "LEN": 600, "ID": "01-0006" } ]
结果示例:
ok.xls
其它说明:
1、以上代码直接生成结果与图中示例对齐方式不同,可在代码中加入格式控制。
2、实际使用的过程中列表字典中还包含了字典,同样进入遍历即可。
3、代码很简陋,希望各位提意见帮忙改进。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
华山资源网 Design By www.eoogi.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
华山资源网 Design By www.eoogi.com
暂无评论...
更新日志
2024年11月15日
2024年11月15日
- P1X3L《P1X3L》[320K/MP3][143MB]
- 群星.2022-良辰好景知几何电视剧原声带【SONY】【FLAC分轨】
- 庾澄庆.1991-管不住自己【福茂】【WAV+CUE】
- 欧倩怡.2001-Cindy(EP)【华星】【WAV+CUE】
- P1X3L《P1X3L》[FLAC/分轨][791.28MB]
- 茵达INDAHKUS《茵 the Blue》[320K/MP3][33.49MB]
- 茵达INDAHKUS《茵 the Blue》[FLAC/分轨][147.57MB]
- 老虎鱼AnneClarkwithUllavanDaelenJustinCiuche-Borderland-HiRes-Files24bit88.2kHz
- 江玲2004-百合盛开2CD[歌林][WAV+CUE]
- 孙露《怕什么孤单3CD》深圳音像[WAV分轨]
- s14全球总决赛目前是什么结果 s14全球总决赛赛程结果图一览
- s2TPA夺冠五人名单都有谁 tpa战队s2夺冠队员名单一览
- s13wbg战队成员都有谁 wbg战队s13成员名单一览
- 网友热议《幻兽帕鲁》停售、赔千万日元:那也赚麻了 不亏
- 这谁顶得住 《最终幻想7:重生》尤菲3D作品穿上终极芙蕾娜衣服