使用python对excle和json互相转换的示例


Posted in Python onOctober 23, 2018

python 版本:2.7

只是读取excel的话可以直接使用xlrd

1、excle to json

代码如下

# -*-coding:utf8 -*-
import xlrd
from collections import OrderedDict
import json

import codecs

file_name=raw_input('请输入要转换的excle文件路径:')
wb = xlrd.open_workbook(file_name)
dict_list = []
sh = wb.sheet_by_index(0)
title = sh.row_values(0)
for rownum in range(1, sh.nrows):
 rowvalue = sh.row_values(rownum)
 single = OrderedDict()
 for colnum in range(0, len(rowvalue)):
 
  print(title[colnum], rowvalue[colnum])
  single[title[colnum]] = rowvalue[colnum]
 dict_list.append(single)
 
j = json.dumps(dict_list)


with codecs.open(file_name[:-5]'.json',"w","utf-8") as f:
 f.write(j)

2、json to excle

代码如下

注意:标题会写在最后一行,主要针对字段不同的json数据。

import json
import os
from openpyxl import Workbook
wb = Workbook()
ws = wb.active


cols = []
def json2excel(jsfile, excfile):
# 读取json数据
a = 1
if os.path.exists(jsfile):
with open(jsfile, 'r') as fp:
while True:
line = fp.readline()
if not line:
break
jsdata = json.loads(line)
for k in jsdata.keys():
if k not in cols:
cols.append(k)
rowdata = []
for col in cols:
rowdata.append(jsdata.get(col))
print '正在写入的行数:'a
ws.append(rowdata) # 写行
a += 1
ws.append(cols) # 标题
print('保存中')
wb.save(excfile) # 保存

if __name__ == '__main__':
import sys
if len(sys.argv) == 3:
jsfile = sys.argv[1]
excfile = sys.argv[2]
json2excel(jsfile, excfile)
else:
print("Usage: python writeExc.py xx.json xx.xlsx")

以上这篇使用python对excle和json互相转换的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python插入排序算法的实现代码
Nov 21 Python
Python的另外几种语言实现
Jan 29 Python
python通过BF算法实现关键词匹配的方法
Mar 13 Python
10个易被忽视但应掌握的Python基本用法
Apr 01 Python
Python while、for、生成器、列表推导等语句的执行效率测试
Jun 03 Python
独特的python循环语句
Nov 20 Python
在python3环境下的Django中使用MySQL数据库的实例
Aug 29 Python
python+selenium实现登录账户后自动点击的示例
Dec 22 Python
Python设计模式之职责链模式原理与用法实例分析
Jan 11 Python
python 实现简易的记事本
Nov 30 Python
pytorch 如何使用batch训练lstm网络
May 28 Python
Python实现Hash算法
Mar 18 Python
Python实现将Excel转换成为image的方法
Oct 23 #Python
python pandas实现excel转为html格式的方法
Oct 23 #Python
使用11行Python代码盗取了室友的U盘内容
Oct 23 #Python
python利用pandas将excel文件转换为txt文件的方法
Oct 23 #Python
python实现根据指定字符截取对应的行的内容方法
Oct 23 #Python
python中正则表达式 re.findall 用法
Oct 23 #Python
python 实现批量xls文件转csv文件的方法
Oct 23 #Python
You might like
一个图形显示IP的PHP程序代码
2007/10/19 PHP
TP - 比RBAC更好的权限认证方式(Auth类认证)
2021/03/09 PHP
基于jQuery实现的仿百度首页滑动选项卡效果代码
2015/11/16 Javascript
在页面中输出当前客户端时间javascript实例代码
2016/03/02 Javascript
Node.js实现兼容IE789的文件上传进度条
2016/09/02 Javascript
Vue.js弹出模态框组件开发的示例代码
2017/07/26 Javascript
简述Angular 5 快速入门
2017/11/04 Javascript
react-navigation 如何判断用户是否登录跳转到登录页的方法
2017/12/01 Javascript
vue-awesome-swiper 基于vue实现h5滑动翻页效果【推荐】
2018/11/08 Javascript
js中值引用和地址引用实例分析
2019/06/21 Javascript
在Vue项目中,防止页面被缩放和放大示例
2019/10/28 Javascript
vue添加锚点,实现滚动页面时锚点添加相应的class操作
2020/08/10 Javascript
Python人脸识别初探
2017/12/21 Python
Python操作mongodb数据库的方法详解
2018/12/08 Python
Python实现SQL注入检测插件实例代码
2019/02/02 Python
利用python将图片版PDF转文字版PDF
2019/05/03 Python
python调用webservice接口的实现
2019/07/12 Python
html5 viewport使用方法示例详解
2013/12/02 HTML / CSS
eDreams澳大利亚:预订机票、酒店和度假产品
2017/04/19 全球购物
美国第一个网上卖鞋零售商:OnlineShoes.com
2017/09/24 全球购物
澳大利亚领先的在线机械五金、园艺和存储专家:Edisons
2018/03/24 全球购物
澳大利亚领先的孕妇服装品牌:Mamaway
2018/08/14 全球购物
意大利珠宝店:Luxury Zone
2019/01/05 全球购物
经济管理专业自荐信
2013/12/30 职场文书
电台实习生求职信
2014/02/25 职场文书
教师党员承诺书
2014/03/25 职场文书
党员承诺书怎么写
2014/05/20 职场文书
社区文艺活动方案
2014/08/19 职场文书
少先队活动总结
2014/08/29 职场文书
交通事故委托书范本(2篇)
2014/09/21 职场文书
2015年度销售个人工作总结
2015/03/31 职场文书
500字作文之难忘的同学
2019/12/20 职场文书
nginx配置ssl实现https的方法示例
2021/03/31 Servers
Keras在mnist上的CNN实践,并且自定义loss函数曲线图操作
2021/05/25 Python
常用的Python代码调试工具总结
2021/06/23 Python
HTML基础详解(下)
2021/10/16 HTML / CSS