首页 > 解决方案 > 如何在python中使用xlrd读取一个空的excel单元格

问题描述

我是第一次使用 xlrd。我正在使用下面的代码,只要单元格中有一些内容,它就可以完美地工作。但如果单元格为空,则会出现错误消息:文件“sheet.py”,第 412 行,单元格中 self._cell_types[rowx][colx],IndexError: array index out of range

我用谷歌搜索了这个错误并得到了几个解决问题的建议,但没有任何效果。这里有人可以帮助我吗?

如果单元格不为空,这是有效的代码:

import xlrd
workbook = xlrd.open_workbook('table.xlsx')
worksheet = workbook.sheet_by_name('table1')
value = worksheet.cell(1, 4).value
print(value)

我已经尝试了几件事,比如

open_workbook(..., ragged_rows=True)

或者

if  worksheet.cell_type(1, 4) != xlrd.XL_CELL_EMPTY and \
    worksheet.cell_type(1, 4) != xlrd.XL_CELL_BLANK: 
# the cell has data
write...

标签: pythonexcelxlrd

解决方案


推荐阅读