python的datetime.now()精度_python如何获取更多时间戳精度

博客介绍了在调度任务中如何获取精确的13位时间戳以避免数据重复或缺失。通常的方法可能不准确,例如通过秒乘以1000来获取。文章提供了一种更精确的方法,通过结合`datetime`和`time`模块,先获取微秒然后转换为毫秒,从而确保时间戳的准确性。
摘要由CSDN通过智能技术生成

调度任务中常常要用到精确的时间,如果获取的13位时间戳不够准确的话,会造成数据的重复或者缺失

通常的不准确的13位时间戳的获取方式(秒*1000)import time

millis = int(round(time.time() * 1000))

print millis

准确的13位时间戳获取(微妙/1000)# -*- coding: utf-8 -*-

import datetime

import time

"""

获取精确毫秒数时间戳、

"""

def get_seconds():

datetime_object = datetime.datetime.now()

now_timetuple = datetime_object.timetuple()

now_second = time.mktime(now_timetuple)

mow_millisecond = long(now_second*1000 + datetime_object.microsecond/1000)

print "timetuple-- "+ str(now_timetuple)

print "datimeobject-- " + str(datetime_object)

print "second-- " + str(now_second)

print "millisecond-- " + str(mow_millisecond)

if __name__ == "__main__":

get_seconds()

结果timetuple-- time.struct_time(tm_year=2018, tm_mon=12, tm_mday=3, tm_hour=11, tm_min=55, tm_sec=6, tm_wday=0,

tm_yday=337, tm_isdst=-1)

datimeobject-- 2018-12-03 11:55:06.254679

second-- 1543809306.0

millisecond-- 1543809306254

推荐学习《Python教程》!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值