在Python中打开excel文件时出错

时间:2014-07-24 10:40:04

标签: python excel python-2.7

您好我是python的新手,这里我试图用python代码打开一个xls文件,但它显示了一些错误,如下所示。

代码:

from xlrd import open_workbook
import os.path
wb = open_workbook('C:\Users\xxxx\Desktop\a.xlsx')

Error:Traceback (most recent call last):
File "C:\Python27\1.py", line 3, in <module>
wb = open_workbook('C:\Users\xxxx\Desktop\a.xlsx')
File "C:\Python27\lib\site-packages\xlrd\__init__.py", line 429, in open_workbook
biff_version = bk.getbof(XL_WORKBOOK_GLOBALS)
File "C:\Python27\lib\site-packages\xlrd\__init__.py", line 1545, in getbof
bof_error('Expected BOF record; found %r' % self.mem[savpos:savpos+8])
File "C:\Python27\lib\site-packages\xlrd\__init__.py", line 1539, in bof_error
raise XLRDError('Unsupported format, or corrupt file: ' + msg)
xlrd.biffh.XLRDError: Unsupported format, or corrupt file: Expected BOF record; found     'PK\x03\x04\x14\x00\x06\x00'

需要帮助guyz

4 个答案:

答案 0 :(得分:1)

这是版本冲突问题。您的Excel工作表格式和xlrd期望的格式不同。您可以尝试以不同的格式保存Excel工作表,直到找到xlrd期望的内容。

答案 1 :(得分:0)

不熟悉xlrd,但我的Mac上没有出现任何错误 根据@jewirth,您可以尝试将后缀重命名为旧版本的xls,然后重新打开它或将其转换为xlsx。

答案 2 :(得分:0)

 from xlrd import open_workbook
    import os.path
    wb = open_workbook(r'C:\Users\XXXX\Desktop\a.xlsx')
    print wb
Output : <xlrd.book.Book object at 0x0260E490>

打开了&#39; r&#39;格式,它显示了excel对象。它正常工作。尝试获取xlrd版本并更新它。将excel文件格式更改为&#39; .xls&#39;来自&#39; .xlsx&#39;并尝试

答案 3 :(得分:0)

您收到该错误是因为您使用的旧版xlrd不支持xlsx。

您需要升级到最新版本的xlrd。