本文实例讲述了Python实现将Excel转换为json的方法。分享给大家供大家参考,具体如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
|
#-*- 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
希望本文所述对大家Python程序设计有所帮助。