• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    python 获取毫秒级时间问题的解决

    根据网上的一些说法,

    在python里获取ms级系统时间可以通过以下方式获取:

    import datetime
    print(datetime.datetime.now().microsecond)

    但通过以下代码测试,发现返回的并不是ms的值,而是us的值:

    import datetime 
    def getTime_ms():
        return (datetime.datetime.now().hour*3600 +\
    
                datetime.datetime.now().minute*60+\
    
                datetime.datetime.now().second )*1000+\
    
               datetime.datetime.now().microsecond/1000
     
    def timetime():
        t = getTime_ms()
        while getTime_ms() - t  500:
            pass
        a = getTime_ms()
        print(t, a, a- t) 
      
    if __name__ == '__main__': 
        from timeit import timeit
        t = timeit('timetime()', 'from __main__ import timetime', number=1)
        print(t)

    打印结果

    (35460614, 35461114, 500) 0.499531984329

    上面实验不太直观,换一个直观点的:

    def timetime():
        t1 = datetime.datetime.now()
        while 1:
            t2 = datetime.datetime.now()
            if (t2 - t1).microseconds >= 1:
                print(t2,t2.microsecond,t1,t1.microsecond,(t2-t1).seconds)
                break 
     
    if __name__ == '__main__':
        from timeit import timeit
        t = timeit('timetime()', 'from __main__ import timetime', number=1)
        print(t)
        #print (datetime.datetime.now())

    输出

    (datetime.datetime(2019, 4, 3, 10, 6, 20, 461882), 461882, datetime.datetime(2019, 4, 3, 10, 6, 20, 461863), 461863, 0) 7.10487365723e-05

    def timetime():
        t1 = datetime.datetime.now()
        while 1:
            t2 = datetime.datetime.now()
            if (t2 - t1).microseconds >= 1000:
                print(t2,t2.microsecond,t1,t1.microsecond,(t2-t1).seconds)
                break 
     
    if __name__ == '__main__':
        from timeit import timeit
        t = timeit('timetime()', 'from __main__ import timetime', number=1)
        print(t)
        #print (datetime.datetime.now())

    输出

    (datetime.datetime(2019, 4, 3, 10, 13, 52, 76548), 76548, datetime.datetime(2019, 4, 3, 10, 13, 52, 75547), 75547, 0) 0.00104904174805

    补充:Python datetime去除毫秒 返回当前时间

    datetime模块返回当前时间

    import datetime
    if __name__ == '__main__':
        a = datetime.datetime.now().replace(microsecond=0)
        print(a, type(a))
    

    运算结果:

    2020-05-22 12:13:42 class 'datetime.datetime'> Process finished with exit code 0

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

    您可能感兴趣的文章:
    • Python 实现毫秒级淘宝抢购脚本的示例代码
    • 使用Python实现毫秒级抢单功能
    • Python完成毫秒级抢淘宝大单功能
    上一篇:pytorch实现逻辑回归
    下一篇:python 时间 T 去掉 带上ms 毫秒 时间格式的操作
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    python 获取毫秒级时间问题的解决 python,获取,毫秒,级,时间,