jupyter notebook 在调用pandas库时
import pandas as pd
df = pd.read_excel("XX.xlsx")
df
1.XLRDError: Excel xlsx file; not supported
原因:最新的xlrd不支持Excel xlsx文件的读取。
解决办法:若为Python3.X,使用pip3;若为低版本Python2.X,使用pip。
卸载xlrd最新版本
pip3 uninstall xlrd
安装低版本:
pip3 install xlrd==1.2.0
接下来,会报错:AttributeError: 'ElementTree' object has no attribute 'getiterator'
原因:新版python3.9中,系统更新删除了getiterator方法,所以低版本的 xlrd库调用getiterator方法时会报错。
解决办法:
找出目录下的python文件下的\site-packages\xlrd\xlsx.py文件
若通过Homebrew安装Python,pip3安装xlrd,位置则在 /usr/local/lib/python3.9/site-packages/xlrd/xlsx.py
修改:
把两个地方的的getiterator(),都改成iter()。
重新终端启动 jupyter notebook ,不再报错。
不卸载新版本解决办法:
在调用read_excel()函数时,添加条件“engine='openpyxl'”,借助openpyxl库来读取xlsx文件。即:read_excel(path,engine='openpyxl')。
参考