我想对几个功能进行回归,其中一个就是时间。因此,我需要将时间转换为定量变量,例如一个整数。
特别是,我想从datetime.time
对象中获取序数。是否有直接的方法来做到这一点?
我知道这可以通过toordinal()
对象的datetime.date
方法完成,但datetime.time
不存在相同的方法
答案 0 :(得分:1)
在datetime module中似乎没有任何内置方法。这种格式并不适用于序数值,因为它不包含日期,并且与具有不同日期的事件进行比较可能会给出错误的顺序。如果这是您自己的返回datetime.time
的代码,我建议您只使用time module中time.time()
的时间戳。如果您需要使人类可读,时间戳总是可以转换为格式化的时间。
即使datetime.time
没有内置转换器到时间戳,也很容易自己动手,只需将每个时间值转换为秒并添加它们:
def dtt2timestamp(dtt):
ts = (dtt.hour * 60 + dtt.minute) * 60 + dtt.second
#if you want microseconds as well
ts += dtt.microsecond * 10**(-6)
return ts