ubuntu下python导入excel出现了问题 5

显示:Traceback(mostrecentcalllast):File"2.py",line35,in<module>read_excel()File"2.py",l... 显示:

Traceback (most recent call last):
File "2.py", line 35, in <module>
read_excel()
File "2.py", line 8, in read_excel
workbook = xlrd.open_workbook('demo.xlsx')
File "/usr/local/lib/python2.7/dist-packages/xlrd/__init__.py", line 435, in open_workbook
ragged_rows=ragged_rows,
File "/usr/local/lib/python2.7/dist-packages/xlrd/book.py", line 91, in open_workbook_xls
biff_version = bk.getbof(XL_WORKBOOK_GLOBALS)
File "/usr/local/lib/python2.7/dist-packages/xlrd/book.py", line 1230, in getbof
bof_error('Expected BOF record; found %r' % self.mem[savpos:savpos+8])
File "/usr/local/lib/python2.7/dist-packages/xlrd/book.py", line 1224, in bof_error
raise XLRDError('Unsupported format, or corrupt file: ' + msg)
xlrd.biffh.XLRDError: Unsupported format, or corrupt file: Expected BOF record; found '\xe4\xb8\x9a\xe5\x8a\xa1,\xe7'
展开
 我来答
sixdegree
2015-05-17 · TA获得超过1594个赞
知道小有建树答主
回答量:355
采纳率:0%
帮助的人:428万
展开全部

这应该是编码问题导致的,'\xe4\xb8\x9a\xe5\x8a\xa1' 对应着中文 “业务” 的  utf-8 编码。 但 xlrd 读取这个文件默认会使用 ascii 解码器,这样子上面这一段字节串就无法被正确解码。


 你试试用

workbook = xlrd.open_workbook('demo.xlsx', encoding_override="utf-8")

应该就可以了

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式