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实现图片变亮或者变暗的方法
Jun 01 Python
Python的Django框架中if标签的相关使用
Jul 15 Python
举例讲解Python中字典的合并值相加与异或对比
Jun 04 Python
Python 实现购物商城,含有用户入口和商家入口的示例
Sep 15 Python
Python if语句知识点用法总结
Jun 10 Python
Python遍历文件夹 处理json文件的方法
Jan 22 Python
win8.1安装Python 2.7版环境图文详解
Jul 01 Python
Python 实现文件读写、坐标寻址、查找替换功能
Sep 11 Python
Python 如何实现数据库表结构同步
Sep 29 Python
Python中BeautifulSoup通过查找Id获取元素信息
Dec 07 Python
在 Python 中使用 7zip 备份文件的操作
Dec 11 Python
手把手教你实现PyTorch的MNIST数据集
Jun 28 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
初学CAKEPHP 基础教程
2009/11/02 PHP
phpmailer发送邮件之后,返回收件人是否阅读了邮件的方法
2014/07/19 PHP
Laravel中使用FormRequest进行表单验证方法及问题汇总
2016/06/19 PHP
php函数传值的引用传递注意事项分析
2016/06/25 PHP
CodeIgniter整合Smarty的方法详解
2017/08/25 PHP
在JavaScript中,为什么要尽可能使用局部变量?
2009/04/06 Javascript
jQuery查询数据返回object和字符串影响原因是什么
2013/08/09 Javascript
javascript学习笔记(二)数组和对象部分
2014/09/30 Javascript
常用的jQuery前端技巧收集
2014/12/24 Javascript
EasyUI,点击开启编辑框,并且编辑框获得焦点的方法
2015/03/01 Javascript
BootStrap Typeahead自动补全插件实例代码
2016/08/10 Javascript
Javascript日期格式化format函数的使用方法
2016/08/30 Javascript
你可能不知道的JSON.stringify()详解
2017/08/17 Javascript
vue 中动态绑定class 和 style的方法代码详解
2018/06/01 Javascript
Vue.directive使用注意(小结)
2018/08/31 Javascript
javascript数组元素删除方法delete和splice解析
2019/12/09 Javascript
深入理解webpack process.env.NODE_ENV配置
2020/02/23 Javascript
微信小程序实现天气预报功能(附源码)
2020/12/10 Javascript
pytorch对可变长度序列的处理方法详解
2018/12/08 Python
python爬虫URL重试机制的实现方法(python2.7以及python3.5)
2018/12/18 Python
Pytorch使用MNIST数据集实现CGAN和生成指定的数字方式
2020/01/10 Python
OpenCV图片漫画效果的实现示例
2020/08/18 Python
记一次Django响应超慢的解决过程
2020/09/17 Python
html2 canvas生成清晰的图片实现打印功能
2019/09/23 HTML / CSS
美国一家全面的在线零售鞋类公司:SHOEBACCA
2017/01/06 全球购物
幼儿园毕业教师感言
2014/02/21 职场文书
投标承诺书范本
2014/03/27 职场文书
总经理任命书
2014/03/29 职场文书
物业消防安全责任书
2014/07/23 职场文书
销售员试用期自我评价
2014/09/15 职场文书
户外活动总结
2015/02/04 职场文书
长江七号观后感
2015/06/11 职场文书
幼儿园开学报名通知
2015/07/16 职场文书
Springboot如何使用logback实现多环境配置?
2021/06/16 Java/Android
Python中requests库的用法详解
2022/06/05 Python