为什么 Python 中的 xlrd 库无法打开 xlsx 文件?



我正在尝试用Python读取。xlsx文件。然而,我注意到流行的库xlrd不能与。xlsx文件一起工作。下面是我得到的错误消息的示例:

import xlrd
if __name__ == '__main__':
loc = ("./excel_file.xlsx")
wb = xlrd.open_workbook(loc)

在尝试运行上面的代码时,我得到以下错误消息:

Traceback (most recent call last):
File "/Users/username/projects/excel_processing_example/main.py", line 15, in <module>
wb = xlrd.open_workbook(loc)
File "/Users/username/projects/excel_processing_example/venv/lib/python3.8/site-packages/xlrd/__init__.py", line 170, in open_workbook
raise XLRDError(FILE_FORMAT_DESCRIPTIONS[file_format]+'; not supported')
xlrd.biffh.XLRDError: Excel xlsx file; not supported

是否有xlrd库不支持xlsx文件的原因?

From PyPI:

xlrd是一个从历史.xls格式的Excel文件读取数据和格式化信息的库。

他们选择在2020年只专注于.xls格式,因为他们不想复制优秀的openpyxl项目所做的工作。

该支持在2.0.0版本(2000年12月)中被删除,参见https://xlrd.readthedocs.io/en/latest/changes.html#id1

删除对。xls文件以外的任何文件的支持。

XLSX格式是继承自Office Open XML的XML格式,而XLS是Microsoft的专有格式。

因此解析.xls文件与解析.xlsx文件完全不同。

如果你想读取xlsx文件,你可以使用openpyxl

最新更新