索引越界了
将col(1)里面的1改为0可以了,是不是制表的方式有问题?
WPS中有一个功能是 类型转换 下面有一个 将数字转换为文本型数字 转换之后就可以了 个人亲测 也就是说,单纯将单元格设置为文本 并不能将已有数据转换为文本
array:队列,数组
我自己也试了下:
import xlrd wb=xlrd.open_workbook('2.xls') sheet1=wb.sheet_by_index(0) row1=sheet1.row(2) print(type(row1)) print(sheet1.row_types(2)) print(type(sheet1.col(1))) print(sheet1.col_types(1))
输出结果:
<class 'list'>#type(row1) 行2类型是 list
array('B', [1, 1, 1, 1, 1, 1])#sheet1.row_types(2)) 行2类型是 list[],只是print出来是以数组的形式表现的,里面的内容是 sheet1.row_types(2)):[1, 1, 1, 1, 1, 1]
<class 'list'>#type(sheet1.col(1)) 列1的类型是列表 list
[0, 0, 1, 2, 2]#sheet1.col_types(1) 列1的类型是列表 list,直接以列表的形式展示出来的。
这样说,不知道 是否清楚。
哪里不一样,11是总列数,你自己可以查一下,看看有没有隐藏列