这篇文章主要介绍了如何在python中将excle与json进行转换,此处通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考价值,需要的朋友可以参考下:
Python主要用来做什么
Python主要应用于:1、Web开发;2、数据科学研究;3、网络爬虫;4、嵌入式应用开发;5、游戏开发;6、桌面应用开发。
1、excle转 json
代码如下
#-*-coding:utf8-*-
importxlrd
fromcollectionsimportOrderedDict
importjson
importcodecs
file_name=raw_input('请输入要转换的excle文件路径:')
wb=xlrd.open_workbook(file_name)
dict_list=[]
sh=wb.sheet_by_index(0)
title=sh.row_values(0)
forrownuminrange(1,sh.nrows):
rowvalue=sh.row_values(rownum)
single=OrderedDict()
forcolnuminrange(0,len(rowvalue)):
print(title[colnum],rowvalue[colnum])
single[title[colnum]]=rowvalue[colnum]
dict_list.append(single)
j=json.dumps(dict_list)
withcodecs.open(file_name[:-5]'.json',"w","utf-8")asf:
f.write(j)
2、json转 excle
代码如下
注意:标题会写在最后一行,主要针对字段不同的json数据。
importjson
importos
fromopenpyxlimportWorkbook
wb=Workbook()
ws=wb.active
cols=[]
defjson2excel(jsfile,excfile):
#读取json数据
a=1
ifos.path.exists(jsfile):
withopen(jsfile,'r')asfp:
whileTrue:
line=fp.readline()
ifnotline:
break
jsdata=json.loads(line)
forkinjsdata.keys():
ifknotincols:
cols.append(k)
rowdata=[]
forcolincols:
rowdata.append(jsdata.get(col))
print'正在写入的行数:'a
ws.append(rowdata)#写行
a+=1
ws.append(cols)#标题
print('保存中')
wb.save(excfile)#保存
if__name__=='__main__':
importsys
iflen(sys.argv)==3:
jsfile=sys.argv[1]
excfile=sys.argv[2]
json2excel(jsfile,excfile)
else:
print("Usage:pythonwriteExc.pyxx.jsonxx.xlsx")
到此这篇关于如何在python中将excle与json进行转换的文章就介绍到这了,更多相关如何在python中将excle与json进行转换的内容请搜索恰卡编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持恰卡编程网!