python excel 转json
import os import xlrd from collections import OrderedDict import json import codecs def findAllFile(base): for root, ds, fs in os.walk(base): for f in fs: if f.endswith(suffix): fullname = os.path.join(root, f) yield fullname def excel2json(filename): print("当前处理文件:"+filename) wb = xlrd.open_workbook(filename) convert_list = [] sh = wb.sheet_by_index(0) title = sh.row_values(0) for rownum in range(1, sh.nrows): print(sh.nrows) return rowvalue = sh.row_values(rownum) single = OrderedDict() for colnum in range(0, len(rowvalue)): single["id"] = rownum # id print(filename) print(single) if( rowvalue[colnum] == ''): single[title[colnum]] = "null" else: single[title[colnum]] = rowvalue[colnum] convert_list.append(single) j = json.dumps(convert_list,ensure_ascii=False,indent=4) # print(j) with codecs.open(filename+'.json',"w","utf-8") as f: f.write(j) def main(): #所有文件在base文件夹下 base = 'base/' for i in findAllFile(base): # print(i) excel2json(i) if __name__ == '__main__': suffix = ".xlsx" main()
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/210947.html原文链接:https://javaforall.net
