Python读取Json字典写入Excel表格的方法


Posted in Python onJanuary 03, 2018

需求:

因需要将一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

Python读取Json字典写入Excel表格的方法

其它说明:

1、以上代码直接生成结果与图中示例对齐方式不同,可在代码中加入格式控制。
2、实际使用的过程中列表字典中还包含了字典,同样进入遍历即可。
3、代码很简陋,希望各位提意见帮忙改进。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用python在校内发人人网状态(人人网看状态)
Feb 19 Python
初步认识Python中的列表与位运算符
Oct 12 Python
Python按行读取文件的简单实现方法
Jun 22 Python
Python3的urllib.parse常用函数小结(urlencode,quote,quote_plus,unquote,unquote_plus等)
Sep 18 Python
python实现淘宝秒杀脚本
Jun 23 Python
python微信聊天机器人改进版(定时或触发抓取天气预报、励志语录等,向好友推送)
Apr 25 Python
Python Subprocess模块原理及实例
Aug 26 Python
python pygame实现滚动横版射击游戏城市之战
Nov 25 Python
TensorFlow dataset.shuffle、batch、repeat的使用详解
Jan 21 Python
使用opencv中匹配点对的坐标提取方式
Jun 04 Python
Python内置函数property()如何使用
Sep 01 Python
python 基于pygame实现俄罗斯方块
Mar 02 Python
python基于ID3思想的决策树
Jan 03 #Python
python遍历文件夹下所有excel文件
Jan 03 #Python
Python将多份excel表格整理成一份表格
Jan 03 #Python
Python将多个excel文件合并为一个文件
Jan 03 #Python
python中的字典操作及字典函数
Jan 03 #Python
Python将多个excel表格合并为一个表格
Feb 22 #Python
使用Python+Splinter自动刷新抢12306火车票
Jan 03 #Python
You might like
MySQL授权问题总结
2007/05/06 PHP
php自动获取字符串编码函数mb_detect_encoding
2011/05/31 PHP
PHPMailer的主要功能特点和简单使用说明
2014/02/17 PHP
在Mac上编译安装PHP7的开发环境
2015/07/28 PHP
php+ajax简单实现全选删除的方法
2016/12/06 PHP
PHP5.6读写excel表格文件操作示例
2019/02/26 PHP
JavaScript中this关键字使用方法详解
2007/03/08 Javascript
利用JS解决ie6不支持max-width,max-height问题的方法
2014/01/02 Javascript
js实例属性和原型属性示例详解
2014/11/23 Javascript
javascript 事件处理示例分享
2014/12/31 Javascript
jQuery实现Flash效果上下翻动的中英文导航菜单代码
2015/09/22 Javascript
JavaScript事件详细讲解
2016/06/27 Javascript
深入理解Angular2 模板语法
2016/08/07 Javascript
H5移动端图片压缩上传开发流程
2016/11/09 Javascript
bootstrap vue.js实现tab效果
2017/02/07 Javascript
TypeScript入门-接口
2017/03/30 Javascript
vue init webpack myproject构建项目 ip不能访问的解决方法
2018/03/20 Javascript
解决vue 打包发布去#和页面空白的问题
2018/09/04 Javascript
优雅的处理vue项目异常实战记录
2019/06/05 Javascript
解决layui富文本编辑器图片上传无法回显的问题
2019/09/18 Javascript
vue中touch和click共存的解决方式
2020/07/28 Javascript
关于uniApp editor微信滑动问题
2021/01/15 Javascript
Python按行读取文件的简单实现方法
2016/06/22 Python
Python编程中NotImplementedError的使用方法
2018/04/21 Python
python 使用三引号时容易犯的小错误
2020/10/21 Python
JD Sports法国:英国篮球和运动时尚的领导者
2017/09/28 全球购物
ColourPop美国官网:卡拉泡泡,洛杉矶彩妆品牌
2019/04/28 全球购物
如何将整数int转换成字串String
2014/03/21 面试题
工程管理专业毕业生自荐信
2014/01/24 职场文书
运动会广播稿500字
2014/01/28 职场文书
学校党员个人问题整改措施思想汇报
2014/10/08 职场文书
小学教师年度个人总结
2015/02/05 职场文书
会计岗位工作总结
2015/08/12 职场文书
三八红旗手先进事迹材料(2016推荐版)
2016/02/25 职场文书
JavaScript实现简单拖拽效果
2021/09/15 Javascript
python保存图片的四个常用方法
2022/02/28 Python