如果 xldate < 0.00: TypeError: '<' 在 'str' 和 'float' 的实例之间不支持
Posted
技术标签:
【中文标题】如果 xldate < 0.00: TypeError: \'<\' 在 \'str\' 和 \'float\' 的实例之间不支持【英文标题】:if xldate < 0.00: TypeError: '<' not supported between instances of 'str' and 'float'如果 xldate < 0.00: TypeError: '<' 在 'str' 和 'float' 的实例之间不支持 【发布时间】:2020-08-12 20:05:40 【问题描述】:您好,我正在尝试从 excel 单元格中读取日期,我正在使用下面的代码,但如果 xldate
a = sheet.cell(4,3).value
a_as_date = datetime.date(*xlrd.xldate_as_tuple(a, 0)[:3])
datetime = xldate.xldate_as_datetime(a, workbook.datemode)
【问题讨论】:
遇到同样的问题,找到解决方案了吗? 【参考方案1】:仔细检查单元格坐标。如果正常,则仔细检查单元格格式(在 excel 单元格属性中)是否为日期。
我在以前运行良好的代码中遇到了类似的问题,问题是新的 excel 文件有一个额外的列。
这引发了错误(第 3 列):
fdate = sheet.cell_value(i, 3)
y, m, d, h, mm, s = xlrd.xldate_as_tuple(fdate, workbook.datemode)
虽然使用新位置(第 4 栏)位置再次完美运行:
fdate = sheet.cell_value(i, 4)
y, m, d, h, mm, s = xlrd.xldate_as_tuple(fdate, workbook.datemode)
【讨论】:
以上是关于如果 xldate < 0.00: TypeError: '<' 在 'str' 和 'float' 的实例之间不支持的主要内容,如果未能解决你的问题,请参考以下文章
在MS Access中,当查询结果为空时,是否有一个简单的方法来显示0.00美元的金额?