如何在Python中获得以毫秒为单位的当前时间?


当前回答

def TimestampMillisec64():
    return int((datetime.datetime.utcnow() - datetime.datetime(1970, 1, 1)).total_seconds() * 1000) 

其他回答

如果您使用我的代码(如下所示),时间将以秒为单位出现,然后在小数之后是毫秒。我认为Windows和Unix之间是有区别的——如果有,请评论。

from time import time

x = time()
print(x)

我的结果(在Windows上)是:

1576095264.2682993

编辑:没有区别:)谢谢tc0nn

def TimestampMillisec64():
    return int((datetime.datetime.utcnow() - datetime.datetime(1970, 1, 1)).total_seconds() * 1000) 

如果你想在你的代码中使用一个简单的方法,用datetime返回毫秒:

from datetime import datetime
from datetime import timedelta

start_time = datetime.now()

# returns the elapsed milliseconds since the start of the program
def millis():
   dt = datetime.now() - start_time
   ms = (dt.days * 24 * 60 * 60 + dt.seconds) * 1000 + dt.microseconds / 1000.0
   return ms

Time.time()可能只给出秒的分辨率,毫秒的首选方法是datetime。

from datetime import datetime
dt = datetime.now()
dt.microsecond

unix诞生的时间

from time import time
while True:
    print(str(time()*1000)+'ms       \r', end='')

程序开始的时间

from time import time
init = time()
while True:
    print(str((time()-init)*1000)+'ms         \r', end='')

谢谢你的宝贵时间