热线电话:13121318867

登录
2020-04-04 阅读量: 3449
用openpyxl打开excel数据的时候有错误提示

import openpyxl

mypyth="你的路径"

wb = openpyxl.load_workbook(mypyth+"\\"+"问题20 - 副本.xlsx")

执行load_workbook命令的时候有错误提示如下

File "C:\ProgramData\Anaconda3\lib\site-packages\openpyxl\descriptors\base.py", line 43, in __set__

super(Typed, self).__set__(instance, value)

TypeError: super(type, obj): obj must be an instance or subtype of type

这应该是excel文件格式问题

观察一下excel文件的几个sheet没有发现异常

没有看到异常的单元格呀,后面仔细研究发现原来这个excel文件存在很多隐藏的表格

看了下隐藏的表,取消隐藏后,发现有的表里面存在3维图形,也存在一些一般图形,应该是因为这些特殊对象的存在,导致不能打开成功

将excel文件中的三维图形删除后,(没有删除普通图形)再运行load_workbook就可以了。

然后在运行下面的保存命令也没有问题

wb.save(mypyth+"\\"+"问题20__1.xlsx")

处理xlsx文件的时候通常都是用openpyxl库,处理xls文件的时候用xlrd和xlwt库。

59.2320
2
关注作者
收藏
评论(1)

发表评论
ermutuxia
2020-04-04
如果你的xlsx文件有一些特殊格式比如立体图形,这个时候用openpyxl库将这个文件打开之后,可能会造成文件损坏,如果文件损坏再执行save命令时就会出错
0.0000 0 0 回复