Python实现将Excel转换为json的方法示例

本文实例讲述了Python实现将Excel转换为json的方法。分享给大家供大家参考,具体如下:

#-*- encoding:utf-8 -*-
import sys
import locale
import os.path
import os
import time
import shutil
import datetime
import types
import sqlite3
import pypyodbc
import traceback
import json
import codecs
import xlrd
import xlwt
from xlutils.copy import copy
# 确定运行环境的encoding
__g_codeset = sys.getdefaultencoding()
if "ascii"==__g_codeset:
  __g_codeset = locale.getdefaultlocale()[1]
#
def object2double(obj):
  if(obj==None or obj==""):
    return 0
  else:
    return float(obj)
  #end if
#
def utf8_to_mbs(s):
  return s.decode("utf-8").encode(__g_codeset)
#
def mbs_to_utf8(s):
  return s.decode(__g_codeset).encode("utf-8")
#
def _tongjiFirstRow():
  #xlrd.Book.encoding = "gbk"
  data = xlrd.open_workbook("xy.xls",formatting_info=True)
  tblTDLYMJANQSXZB = data.sheets()[0]
  #找到有几列几列
  nrows = tblTDLYMJANQSXZB.nrows #行数
  ncols = tblTDLYMJANQSXZB.ncols #列数
  totalArray=[]
  arr=[]
  for i in range(0,ncols):
    arr.append(tblTDLYMJANQSXZB.cell(0,i).value);
  #end for
  for rowindex in range(1,nrows):
    dic={}
    for colindex in range(0,ncols):
     s=tblTDLYMJANQSXZB.cell(rowindex,colindex).value
     dic[arr[colindex]]=s
    #end for
    totalArray.append(dic);
  #end for
  a=json.dumps(totalArray,ensure_ascii=False)
  file=codecs.open("xy.txt","w",'utf-8')
  file.write(a)
  file.close()
#end
_tongjiFirstRow();
print("export OK")

Excel文件

json

PS:关于json操作,这里再为大家推荐几款比较实用的json在线工具供大家参考使用:

在线JSON代码检验、检验、美化、格式化工具:
http://tools.jb51.net/code/json

JSON在线格式化工具:
http://tools.jb51.net/code/jsonformat

在线XML/JSON互相转换工具:
http://tools.jb51.net/code/xmljson

json代码在线格式化/美化/压缩/编辑/转换工具:
http://tools.jb51.net/code/jsoncodeformat

在线json压缩/转义工具:
http://tools.jb51.net/code/json_yasuo_trans

更多Python相关内容感兴趣的读者可查看本站专题:《Python操作Excel表格技巧总结》、《Python操作json技巧总结》、《Python编码操作技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。