Python xlrd,在循环读取行数时,遇到最后一行空白单元格时报错
问题描述:
rownum = 1
while True:
getrow = table.cell(rownum, 5).value
print(getrow)
if len(getrow) > 0:
rownum += 1
print(rownum)
else:
break
print(rownum)
为了获取表格行数,在循环最后一行遇到空白单元格时,getrow = table.cell(rownum, 5).value报错,没有办法到达后面的if判断
self._cell_types[rowx][colx],
IndexError: list index out of range
答
报错是指你的数组越界。下标从0开始的,也就是说,rows和cols的0代表的是第一行第一列,如果你是一行数据,那么你的table.cell(rownum-1,5)而不是rownum,如果cols=5,那么你读取第五个应该是table.cell(rownum-1,4)