Python:从时间上获得序数

时间:2013-07-11 08:22:49

标签: python time regression ordinal python-datetime

我想对几个功能进行回归,其中一个就是时间。因此,我需要将时间转换为定量变量,例如一个整数。

特别是,我想从datetime.time对象中获取序数。是否有直接的方法来做到这一点?

我知道这可以通过toordinal()对象的datetime.date方法完成,但datetime.time不存在相同的方法

1 个答案:

答案 0 :(得分:1)

datetime module中似乎没有任何内置方法。这种格式并不适用于序数值,因为它不包含日期,并且与具有不同日期的事件进行比较可能会给出错误的顺序。如果这是您自己的返回datetime.time的代码,我建议您只使用time moduletime.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