使用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程序中进行文件读取和写入操作的教程
Apr 28 Python
Python中的choice()方法使用详解
May 15 Python
python嵌套函数使用外部函数变量的方法(Python2和Python3)
Jan 31 Python
Python 数据结构之队列的实现
Jan 22 Python
Python unittest单元测试框架总结
Sep 08 Python
详解pandas库pd.read_excel操作读取excel文件参数整理与实例
Feb 17 Python
学习python的前途 python挣钱
Feb 27 Python
Python命令行参数解析工具 docopt 安装和应用过程详解
Sep 26 Python
Python socket实现的文件下载器功能示例
Nov 15 Python
解析python 类方法、对象方法、静态方法
Aug 15 Python
Scrapy中如何向Spider传入参数的方法实现
Sep 28 Python
python 求两个向量的顺时针夹角操作
Mar 04 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
Windows中安装Apache2和PHP4权威指南
2006/11/18 PHP
php 常用类整理
2009/12/23 PHP
php获取当前网址url并替换参数或网址的方法
2010/06/06 PHP
PHP mysqli事务操作常用方法分析
2017/07/22 PHP
laravel 5.3 单用户登录简单实现方法
2019/10/14 PHP
php判断数组是否为空的实例方法
2020/05/10 PHP
用于判断用户注册时,密码强度的JS代码
2009/01/01 Javascript
利用js获取服务器时间的两个简单方法
2010/01/08 Javascript
用jquery和json从后台获得数据集的代码
2011/11/07 Javascript
js的onload事件及初始化按钮事件示例代码
2013/09/25 Javascript
JavaScript中的数组操作介绍
2014/12/30 Javascript
浅谈javascript 函数内部属性
2015/01/21 Javascript
JavaScript移除数组内重复元素的方法
2015/03/18 Javascript
javascript实现方法调用与方法触发小结
2016/03/26 Javascript
JavaScript使用小插件实现倒计时的方法讲解
2019/03/11 Javascript
jquery绑定事件 bind和on的用法与区别分析
2020/05/22 jQuery
JS如何生成动态列表
2020/09/22 Javascript
element-ui点击查看大图的方法示例
2020/12/14 Javascript
利用Python中的mock库对Python代码进行模拟测试
2015/04/16 Python
python结合selenium获取XX省交通违章数据的实现思路及代码
2016/06/26 Python
Python线程指南详细介绍
2017/01/05 Python
python+matplotlib实现动态绘制图片实例代码(交互式绘图)
2018/01/20 Python
python 每天如何定时启动爬虫任务(实现方法分享)
2018/05/21 Python
python面试题小结附答案实例代码
2019/04/11 Python
英国领先的男士服装和时尚零售商:Burton
2017/01/09 全球购物
加拿大领先的优质厨具产品在线购物网站:Golda’s Kitchen
2017/11/17 全球购物
英国时尚首饰品牌:Missoma
2020/06/29 全球购物
致1500米运动员广播稿
2014/02/07 职场文书
暑期研修感言
2014/02/17 职场文书
2014年酒店工作总结与计划
2014/11/17 职场文书
初二学生评语大全
2014/12/26 职场文书
功夫熊猫观后感
2015/06/10 职场文书
家庭贫困证明
2015/06/16 职场文书
apache基于端口创建虚拟主机的示例
2021/04/22 Servers
数据库之SQL技巧整理案例
2021/07/07 SQL Server
VMware虚拟机安装 Windows Server 2022的详细图文教程
2022/09/23 Servers