刚发现pandas库read_excel在读取excel中所有sheet时,发现如果某一张worksheet为图片时,会触发异常报错。
代码如下
import pandas as pd
excel = "D:\Learning\OriginData\calce\A123\excel\DST-US06-FUDS-0\A1-008-DST-US06-FUDS-0-20120813.xlsx"
sheet = pd.read_excel(excel, sheet_name=None)
print(list(sheet.keys()))
运行结果及报错内容
我的解答思路和尝试过的方法
当删除有图片的sheet,剩余含有3个sheet的excel用同样的代码运行后,一切正常。
我想要达到的结果
希望各位python专家帮忙解答一下 原因以及解决办法。
附注:我尝试用openpyxl库,可以正常读取sheet列表。
那个不是图片,excel里的sheet分很多种,有的放数据,有的放图表,不同类型的sheet对象支持不同的方法,
pd.read_excel会读取excel内的所有数据到内存,但对于chartsheet(即图表sheet)来说,这个sheet里面没有表格数据,因此此类sheet也不支持"reset_dimensions"这个方法,直接去读当然会报错。
如果只是要读取sheet的名称的话,就不要用这个方法了,如果是要读取数据,建议指定sheet读取