读书人

尝试施用xlrd来处理xls文件但是一开

发布时间: 2012-12-25 16:18:28 作者: rapoo

尝试使用xlrd来处理xls文件,但是一开始就失败了
本帖最后由 paul_26piggy 于 2012-10-12 07:30:14 编辑 我的平台是Eclipse+Python 2.7 并且安装了xlrd-0.6.1.win32
#!/usr/bin/env python
#-*- coding:gbk-*-
'''

'''


import xlrd
#from pyExcelerator import *


if __name__ == '__main__':
book = xlrd.open_workbook('E:\handle_excel\src\e_1.xlsx')
print "The number of worksheets is", book.nsheets
print "Worksheet name(s):", book.sheet_names()
sh = book.sheet_by_index(0)
print sh.name, sh.nrows, sh.ncols
print "Cell D30 is", sh.cell_value(rowx=29, colx=3)
for rx in range(sh.nrows):
print sh.row(rx)


以下是错误
Traceback (most recent call last):
File "E:\handle_excel\src\handle_excel_001.py", line 12, in <module>
book = xlrd.open_workbook('E:\handle_excel\src\e_1.xlsx')
File "D:\Python27\lib\site-packages\xlrd\__init__.py", line 370, in open_workbook
biff_version = bk.getbof(XL_WORKBOOK_GLOBALS)
File "D:\Python27\lib\site-packages\xlrd\__init__.py", line 1323, in getbof
raise XLRDError('Expected BOF record; found 0x%04x' % opcode)
xlrd.biffh.XLRDError: Expected BOF record; found 0x4b50
[解决办法]
xlrd 是不能读取 2007的excel文件的。

如果需要处理2007格式的excel文件,推荐使用 http://packages.python.org/openpyxl/

读书人网 >perl python

热点推荐