Python数据读取之.xlsx补充(避坑指南)

针对Excel中的.xlsx文件,在使用pandas库之前,笔者走过很多弯路,其中之一就是xrld库,笔者使用xlrd库进行数据读取并未成功,在这里写一点自己的失败经历,就当一份闭坑指南了吧。如果有小伙伴成功在Python3.9.1版本中使用xlrd库对.xlsx文件进行数据处理了的话,欢迎指教~

我使用的Python版本为3.9.1,首先我参考了这篇文章:

python中读取xlsx文件_give it a try~的博客-CSDN博客_python读取xlsx文件

首先安装并配置了xlrd库,输入如下代码:

import xlrd
book = xlrd.open_workbook('data.xlsx')

程序报错:

xlrd.biffh.XLRDError: Excel xlsx file; not supported

后来为此我又继续查询资料,资料显示是由于xlrd的版本问题,目前安装的适配版本为2.0.1版,笔者建议降到1.2.0版本。

xlrd.biffh.XLRDError: Excel xlsx file; not supported_-JasonWang-的博客-CSDN博客_xlrd.biffh.xlrderror

于是在cmd窗口使用pip install xlrd===1.2.0版本,对其强制降级,重新运行代码,程序仍然报错,但报错原因发生变化:

AttributeError: 'ElementTree' object has no attribute 'getiterator'

查询参考以下文章发现,xml.etree.ElementTree.Element.getiterator()自Python 2.7起已弃用,并已在Python 3.9中删除,因此建议提高xrld版本。

【Python3.9使用pandas读取Excel报错】AttributeError: ‘ElementTree‘ object has no attribute ‘getiterator‘_南京北云的博客-CSDN博客

此时我查询了xlrd的版本号,versions: 0.5.2, 0.6.1a4, 0.6.1, 0.7.0, 0.7.1, 0.7.2, 0.7.3, 0.7.4, 0.7.5, 0.7.6, 0.7.7, 0.7.8, 0.7.9, 0.8.0, 0.9.0, 0.9.1, 0.9.2, 0.9.3, 0.9.4, 1.0.0, 1.1.0, 1.2.0, 2.0.0, 2.0.1,并没有介于二者之间的版本,因此我认为该方法并不适合与.xlsx文件的操作处理,因此作罢。

你可能感兴趣的:(python)