6

如果我做:

print sh.cell(1,col)

我得到:

text:u''
text:u''
text:u'eng'
text:u''
xldate:41450.0
number:11.0
number:30.0
text:u'Reality TV'

但是,如果我这样做:print type(sh.cell(1,col)),我会得到:

<class 'xlrd.sheet.Cell'>

对所有人。

我如何从 xlrd 获得“文本”或“xldate”或“数字”——即单元格类型?

4

2 回答 2

12

你想要对象的ctype属性Cell。例如:

sh.cell(1,col).ctype

这是一个表示单元类型的整数。你想比较xlrd.XL_CELL_DATE; 请参阅此处的文档

于 2013-06-28T20:51:01.900 回答
1

我这样做了一个hack-ish方式:

if str(sh.cell(1,col)).split(':')[0] == 'xldate':
于 2013-06-28T20:48:24.787 回答