我正在尝试检查PyWin在带有Excel的COM接口中返回的数据是否属于'time'类型。
这是不起作用的代码:
from win32com.client import Dispatch
from pywintypes import Time
cellToTest = Dispatch('Excel.Application').Sheets('SomeSheet').Range('SomeCell').Value
if type( cellToTest ) == Time:
print 'It\'s an excel time type'
因为:type(Time)
返回:<type 'builtin_function_or_method'>
然而这:type(cellToTest)
返回:<type 'time'>
答案 0 :(得分:1)
时间不是类型,而是返回新时间对象(http://docs.activestate.com/activepython/2.4/pywin32/pywintypes__Time_meth.html)的函数。我不知道在win32包中托管实际类型的位置,但您可以创建一个任意时间对象并询问其类型:
type(cellToTest) == type(Time(1))