脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - python中将字典形式的数据循环插入Excel

python中将字典形式的数据循环插入Excel

2021-01-05 00:17幼稚园麻辣小龙虾 Python

这篇文章主要介绍了python中将字典形式的数据循环插入Excel的方法,需要的朋友可以参考下

1.我们看到字典形式的数据如下所示

?
1
list=[["2891-1", "D"],["2892-1", "D"],["2896-1", "B"],["2913-1", 0],["2913-2", 1],["2913-3", 1]]

此list是在数据库中存在的

2.我们把这些样式的字点数据做一次数据转换

把list转换成字典的形式(看下图代码)

?
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
# -*- coding: utf-8 -*-
import pymysql
import json
import re
from xlsxwriter import Workbook
datanew = {}
#result数据是查询数据库中的list
for item in result:
  datanew[item['login_name']] = list(eval(item['answer']))
 #创建一个新的xlsx文件(如果原有同名文件会被覆盖)
book = xlsxwriter.Workbook('C:/Users/Administrator/Desktop/xxx.xlsx')
 #创建一个新的表单,默认名称为 “sheet1”,输入字符参数可指定名称
sheet1 = book.add_worksheet()
#字典数据
#循环字典key 的值
num = [a for a in datanew]
lennum=len(num)
for a in range(lennum):
  lena=len(datanew[num[a]]);
  lena1=datanew[num[a]]; 
  try:
    print(lena1)
    lena1.sort()
  except Exception as e:
    print(e)
  a1=num[a]
  sheet1.write(a+1,0,a1)
  b1x=[]
  for b in range(lena):
    b1=(lena1[b])[0]
    b2=(lena1[b])[1]
    b1x.append(b1);
    sheet1.write(a+1,b+1,b2)
  if a==0
    for y in range (len(b1x)):
      bx=b1x[y]
      sheet1.write(0,y+1,bx)
book.close()

运行上面代码 我们得到这些样子的格式

python中将字典形式的数据循环插入Excel

总结

以上所述是小编给大家介绍的python中将字典形式的数据循环插入Excel,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!

原文链接:http://www.cnblogs.com/stevenshushu/p/8294940.html

延伸 · 阅读

精彩推荐