使用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实现红包裂变算法
Feb 16 Python
Python中异常重试的解决方案详解
May 05 Python
python实现微信跳一跳辅助工具步骤详解
Jan 04 Python
Python字符串格式化%s%d%f详解
Feb 02 Python
TensorFlow深度学习之卷积神经网络CNN
Mar 09 Python
对python xlrd读取datetime类型数据的方法详解
Dec 26 Python
详解Python正则表达式re模块
Mar 19 Python
Python Web版语音合成实例详解
Jul 16 Python
python下载库的步骤方法
Oct 12 Python
python实现可下载音乐的音乐播放器
Feb 25 Python
使用keras实现Precise, Recall, F1-socre方式
Jun 15 Python
django 模型字段设置默认值代码
Jul 15 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
PHP中数组合并的两种方法及区别介绍
2012/09/14 PHP
php笔记之:文章中图片处理的使用
2013/04/26 PHP
destoon找回管理员密码的方法
2014/06/21 PHP
PHP.vs.JAVA
2016/04/29 PHP
php PDO实现的事务回滚示例
2017/03/23 PHP
详解PHP5.6.30与Apache2.4.x配置
2017/06/02 PHP
php获取是星期几的的一些常用姿势
2019/12/15 PHP
使一个函数作为另外一个函数的参数来运行的javascript代码
2007/08/13 Javascript
JS中把字符转成ASCII值的函数示例代码
2013/11/21 Javascript
jquery 隐藏与显示tr标签示例代码
2014/06/06 Javascript
bootstrap时间插件daterangepicker使用详解
2017/10/19 Javascript
webpack 插件html-webpack-plugin的具体使用
2018/04/09 Javascript
引入外部js脚本加载慢与页面白屏问题的解决
2018/12/10 Javascript
Javascript实现一朵从含苞到绽放的玫瑰
2019/03/30 Javascript
解决微信小程序中的滚动穿透问题
2019/09/16 Javascript
laydate只显示时分 不显示秒的功能实现方法
2019/09/28 Javascript
vue中beforeRouteLeave实现页面回退不刷新的示例代码
2019/11/01 Javascript
[01:01:24]LGD vs Fnatic 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
Python入门_浅谈逻辑判断与运算符
2017/05/16 Python
Python加密方法小结【md5,base64,sha1】
2017/07/13 Python
详解python中的time和datetime的常用方法
2019/07/08 Python
pygame实现弹球游戏
2020/04/14 Python
python使用隐式循环快速求和的实现示例
2020/09/11 Python
美国求婚钻戒网站:Super Jeweler
2016/08/27 全球购物
Lookfantastic挪威官网:英国知名美妆购物网站
2017/07/26 全球购物
生态学毕业生自荐信
2013/10/27 职场文书
精彩自我鉴定
2014/01/16 职场文书
《乌塔》教学反思
2014/02/17 职场文书
《猴子种果树》教学反思
2014/04/26 职场文书
通信工程专业求职信
2014/06/04 职场文书
银行优秀员工推荐信
2015/03/24 职场文书
工作态度恶劣检讨书
2015/05/06 职场文书
终止合同协议书范本
2016/03/22 职场文书
Python+Appium实现自动抢微信红包
2021/05/21 Python
Python torch.flatten()函数案例详解
2021/08/30 Python
mysql幻读详解实例以及解决办法
2022/06/16 MySQL