xlrd.biffh.XLRDError: Excel xlsx file; not supported解决方法

xlrd.biffh.XLRDError: Excel xlsx file; not supported解决方法


在运用python中xlrd库读取.xlsx文件时报错,无法读取。这是由于当前python中的xlrd版本过高导致的,高版本下删除的对应的.xlsx读取方法。因此,只需要重装xlrd即可,win+R打开cmd,输入下文,即可解决该问题

pip3 install xlrd==1.2.0
  • 112
    点赞
  • 60
    收藏
    觉得还不错? 一键收藏
  • 35
    评论
### 回答1: 这个错误是因为xlrd库不支持读取xlsx格式的Excel文件。xlrd只能读取xls格式的Excel文件。如果你需要读取xlsx格式的Excel文件,可以考虑使用openpyxl库。它支持读取和写入xlsx格式的Excel文件。你可以使用以下代码来读取xlsx格式的Excel文件: ```python from openpyxl import load_workbook wb = load_workbook(filename='your_file.xlsx') sheet = wb.active ``` 其中,`your_file.xlsx`是你要读取Excel文件的文件名。`sheet`变量是读取到的Excel文件中的活动表格。你可以使用`sheet`变量来获取表格中的数据。 ### 回答2: xlrd 是一个 Python 的库,用于读取 Excel 文件。它是一个很常用的库,但是它只支持早期版本的 Excel 文件(xls 格式),不支持后来的 xlsx 格式。 当你用 xlrd读取一个 xlsx 文件时,会出现错误信息 "xlrd.biffh.XLRDError: Excel xlsx file; not supported"。这是因为 xlrd 只能处理 xls 格式的文件,无法处理 xlsx 格式。 要解决这个问题,你可以使用另外一个库来读取 xlsx 文件,例如 openpyxl。openpyxl 是一个支持读写 Excel xlsx 文件的库,是 xlrd 的替代品。 你可以通过以下步骤使用 openpyxl 来读取 xlsx 文件: 1. 首先,你需要确保已经安装了 openpyxl 库。你可以使用 pip 命令来安装它:pip install openpyxl。 2. 然后,你可以使用 openpyxl.load_workbook() 函数来加载 xlsx 文件,将其保存为 workbook 对象。例如:workbook = openpyxl.load_workbook('file.xlsx')。 3. 接下来,你可以使用 workbook.active 属性来获取当前活动的工作表,或者使用 workbook['Sheet1'] 来获取指定名称的工作表。例如:sheet = workbook.active 或者 sheet = workbook['Sheet1']。 4. 最后,你可以使用 sheet.cell(row, column).value 属性来获取指定单元格的值。例如:value = sheet.cell(1, 1).value。 使用 openpyxl 可以轻松读取 xlsx 文件的数据,并且具有易用的功能和接口。希望这个解答对你有所帮助! ### 回答3: xlrd是一个Python库,用于读取和分析Excel文件。然而,它仅支持早期版本的Excel文件(.xls),而不支持较新的Excel文件(.xlsx)。 当我们尝试使用xlrd读取一个.xlsx文件时,会出现xlrd.biffh.XLRDError异常,并显示"Excel xlsx file; not supported"的错误消息。这是因为xlsx文件采用了一种不同的文件格式,与xls文件有所不同,因此xlrd无法正确解析它。 为了解决这个问题,我们可以使用另一个Python库openpyxl来读取和处理.xlsx文件。openpyxl是专门用于处理Excel 2010及更高版本的文件的库。它提供了与xlrd类似的功能,但支持新的.xlsx文件格式。 要使用openpyxl读取.xlsx文件,我们需要安装openpyxl库并编写相应的代码来打开和读取文件内容。下面是一个简单的示例: ```python from openpyxl import load_workbook # 打开.xlsx文件 workbook = load_workbook('example.xlsx') # 选择要读取的工作表 sheet = workbook['Sheet1'] # 读取单元格的值 value = sheet['A1'].value # 打印结果 print(value) ``` 在上面的示例中,我们使用load_workbook函数打开.xlsx文件,并选择要读取的工作表。然后,我们可以使用sheet对象来读取单元格的值。 总之,xlrd不支持读取.xlsx文件,但我们可以使用openpyxl来处理这种文件类型。
评论 35
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值