您当前的位置:首页 > IT编程 > python
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:python 获取毫秒级时间问题的解决

51自学网 2021-10-30 22:46:05
  python
这篇教程python 获取毫秒级时间问题的解决写得很实用,希望能帮到您。

根据网上的一些说法,

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

import datetimeprint(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 datetimeif __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

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


pytorch实现逻辑回归
python 时间 T 去掉 带上ms 毫秒 时间格式的操作
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。