You need to enable JavaScript to run this app. 求助解决PyCharm中使用xlrd读取xlsx文件时的格式不支持报错
优惠活动
大模型
产品
解决方案
定价
更多

求助解决PyCharm中使用xlrd读取xlsx文件时的格式不支持报错

报错核心原因
  • 触发报错的根源为高版本xlrd的能力裁剪:自xlrd 2.0.0版本起,官方彻底移除了对xlsx格式Excel文件的读取支持,仅保留对旧版二进制xls格式的解析能力。当前PyCharm项目虚拟环境中安装的xlrd版本高于2.0.0,直接调用xlrd.open_workbook()读取xlsx文件时,就会抛出堆栈中显示的XLRDError: Excel xlsx file; not supported格式不支持错误。
对应解决方案

可根据自身项目场景选择以下任意一种方式解决:

方案1:降级xlrd到兼容xlsx格式的版本

  • 打开PyCharm当前项目的终端,确认已激活项目自带的venv虚拟环境(终端开头会显示类似(venv) D:\xxx的标识,避免将依赖安装到全局Python路径导致项目环境不生效)
  • 执行版本安装命令:pip install xlrd==1.2.0
  • 安装完成后无需修改原有ReadExelFile.py的代码逻辑,即可正常读取xlsx文件
  • 注意:该方案仅适合快速适配现有代码的场景,xlrd 1.2.0及更早版本不再接收后续安全补丁和功能更新

方案2:换用原生支持xlsx格式的解析库

  • 优先选用官方长期维护、对xlsx格式兼容性稳定的openpyxl库
  • 先在项目终端执行安装命令:pip install openpyxl
  • 修改原有代码:
    1. 移除原有的import xlrd导入语句,替换为from openpyxl import load_workbook
    2. 将原读文件语句wb = xlrd.open_workbook(x)替换为wb = load_workbook(x, data_only=True)
  • 注意:该方式不支持读取旧版xls格式文件,如果需要同时兼容老格式xls文件,可以搭配pandas的统一读取接口实现多格式兼容

内容的提问来源于stack exchange,提问作者Divyansh Parakh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.25 17:06:01