Pandas调用read_excel读取xlsx文件报XLRDError如何解决
错误原因
你当前环境安装的xlrd库版本≥2.0,该版本更新后官方移除了对.xlsx格式Excel文件的支持,仅支持读取老式的.xls格式文件,因此读取FFT1.xlsx时触发报错。你同学的设备可以正常运行,大概率是他的环境中xlrd版本低于2.0,或是已经安装了openpyxl库、pandas自动调用了该库作为xlsx读取引擎。
修复方案
- 方案一:指定openpyxl作为读取引擎(推荐)
openpyxl是专门用于读取写入.xlsx格式文件的库,兼容性更好。首先执行安装命令:
pip install openpyxl
如果你使用Anaconda环境,也可以执行:
conda install openpyxl
安装完成后修改你的读取代码,显式指定engine参数即可:
FFT1=pd.read_excel('FFT1.xlsx', sheet_name='sheet1', engine='openpyxl')
- 方案二:降级xlrd到支持xlsx的版本
如果不想修改原有代码,可以将xlrd库回退到最后一个支持xlsx格式的1.2.0版本,执行命令:
pip install xlrd==1.2.0
Anaconda环境对应命令:
conda install xlrd=1.2.0
降级完成后原有代码无需修改即可直接运行。
内容的提问来源于stack exchange,提问作者Arnold Schwarzenegger
相关产品推荐
相关产品推荐

