2025年5月18日 星期日 乙巳(蛇)年 二月廿 设为首页 加入收藏
rss
您当前的位置:首页 > 计算机 > 编程开发 > Python

python3用xlrd模块将本地excel转换为json

时间:12-10来源:作者:点击数:24

python3用xlrd模块将本地excel转换为json

表格为行列颠倒形式:

  • #!/usr/bin/env python
  • # coding=utf-8
  • # 本地excel转换为json
  • import json
  • import xlrd
  • file = "product.xlsx"
  • data = xlrd.open_workbook(file)
  • # 第二个sheet表是路南东
  • table = data.sheets()[1]
  • # 行数
  • nrows = table.nrows
  • # 列数
  • ncols = table.ncols
  • # 这个就是每个字典的key值
  • keys = ['id','name']
  • # 偶数行值even循环,获取id
  • even_list = []
  • for j in range(0,nrows,2):
  • # 偶数行的值
  • even=table.row_values(j)
  • even_list += even
  • # 奇数行值odd循环,获取name
  • odd_list = []
  • for i in range(1,nrows,2):
  • # 奇数行的值
  • odd_value = table.row_values(i)
  • odd_list += odd_value
  • # 列表嵌套,存储两个列表,一个是id需要的值,一个是name需要的值[[id的值],[name的值]]
  • result_list = []
  • result_list.append(even_list)
  • result_list.append(odd_list)
  • # 最后结果,列表里面嵌套字典[{},{}]
  • r = []
  • for i in range(len(even_list)):
  • # 存储每一组数据的字典
  • s = {}
  • print("写入第%s个数据"%(i+1))
  • for x in range(len(keys)):
  • s[keys[x]] = result_list[x][i]
  • r.append(s)
  • print("完毕。")
  • returnJson = json.dumps(r,ensure_ascii=False)
  • with open("路南东.json",'w',encoding='utf-8')as f:
  • f.write(returnJson)

结果形式:

  • [{"id": "shadow421-2437", "name": ""},{"id": "shadow487-2830", "name": "15119"}]
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门
本栏推荐