Python学习笔记_Python向Excel写入数据

实验环境

1、OS:Win 10 64位

2、Python 3.7

3、如果没有安装xlwt库,则安装:pip install xlwt

下面是从网上找到的一段代码,网上这段代码,看首行注释行,是在Linux下开发的,在Windos下,也可以正常运行。

#!/usr/bin/env python
# coding=utf-8
 
from xlwt import *
#需要xlwt库的支持
#import xlwt
file = Workbook(encoding = 'utf-8')
#指定file以utf-8的格式打开
table = file.add_sheet('data')
#指定打开的文件名
 
data = {
        "1":["张三",150,120,100],
        "2":["李四",90,99,95],
        "3":["王五",60,66,68]
        }
#字典数据
 
ldata = []
num = [a for a in data]
#for循环指定取出key值存入num中
num.sort()
#字典数据取出后无需,需要先排序
 
for x in num:
#for循环将data字典中的键和值分批的保存在ldata中
    t = [int(x)]
    for a in data[x]:
        t.append(a)
    ldata.append(t)
 
for i,p in enumerate(ldata):
#将数据写入文件,i是enumerate()函数返回的序号数
    for j,q in enumerate(p):
        # print i,j,q
        table.write(i,j,q)
file.save('data.xls')

生成好的excel文件就在当前目录。

问题:

原文是:file.save('data.xlsx')

上述代码,,原文生成的文件是data.xlsx,可以正常生成,但打开的时候,出现下面提示信息,点OK按钮后,无法正常显示。

解决办法:把生成的文件名的后缀改为.xls,即可正常打开

在此记录,供学习者参考。感谢原文作者,以后使用xlwt写Excel,生成的excel文件的后缀,用.xls即可。

猜你喜欢

转载自www.cnblogs.com/SH170706/p/10448579.html