我环顾四周,似乎有很多黑客,但没有简单的“好”方法来做到这一点。我想将 Pythondatetime
对象转换为类似time.time()
返回的微时间(seconds.microseconds)。
最好的方法是什么?完全去除mktime()
微秒,您可以想象构建 a timedelta
,但这似乎不正确。您也可以使用 a float(strftime("%s.%f"))
(正确计算舍入秒数),但这似乎是一个超级黑客。
这样做的“正确”方法是什么?
time.mktime(dt.timetuple()) + dt.microsecond / 1000000.0
如果您不想使用strftime
and ,则可以使用float
。
time.time()
它返回与 with相同的内容dt = datetime.datetime.now()
。
def microtime(dt):
unixtime = dt - datetime.datetime(1970, 1, 1)
return unixtime.days*24*60*60 + unixtime.seconds + unixtime.microseconds/1000000.0
进口时间;
微时间=int(time.time()*1000);
打印微时;