当前位置: 首页 > 面试题库 >

Python-以毫秒为单位的时差不适用于我

郎宏浚
2023-03-14
问题内容

我已经阅读了一些有关此的文章,并认为我有一些有效的代码。如果两个值之间的差小于1秒,则显示的毫秒是正确的。

如果差异超过一秒,它仍然只显示毫米的差异。

如下。

正确:

 now_wind 2013-08-25 08:43:04.776209 
 first_time_wind 2013-08-25 08:43:04.506301
 time_diff 0:00:00.269908
 diff 269

错误-应该是2000 + 76?

 now_wind 2013-08-25 08:43:25.660427
 first_time_wind 2013-08-25 08:43:23.583902
 time_diff 0:00:02.076525
 diff 76


 #!/usr/bin/env python
 import datetime
 import time
 from time import sleep
 first_time_wind = datetime.datetime.now()
 sleep (2)
 now_wind = datetime.datetime.now()
 print "now_wind", now_wind
 print "first_time_wind", first_time_wind
 time_diff_wind = (now_wind - first_time_wind)
 print "time_diff", time_diff_wind
 print "diff", time_diff_wind.microseconds / 1000

问题答案:
>>> a = datetime.datetime.now()
>>> b = datetime.datetime.now()
>>> a
datetime.datetime(2013, 8, 25, 2, 5, 1, 879000)
>>> b
datetime.datetime(2013, 8, 25, 2, 5, 8, 984000)
>>> a - b
datetime.timedelta(-1, 86392, 895000)
>>> b - a
datetime.timedelta(0, 7, 105000)
>>> (b - a).microseconds
105000
>>> (b - a).seconds
7
>>> (b - a).microseconds / 1000
105

您的微秒不包括过去的秒数



 类似资料:
  • 问题内容: 我通过传递ipAddress来对方法进行调用,它会返回ipAddress的位置,例如国家/地区,城市等。因此,我试图查看每个调用花费的时间。因此,我在调用方法之前设置了start_time,在调用之后设置了end_time。 所以有时候我得到的差为0 。并且resp包含有效的响应。 因此,这意味着有时需要0毫秒才能恢复响应。任何建议将不胜感激。 问题答案: 试试这个

  • 问题内容: 有什么办法可以使时间戳记中的毫秒数变为或(或出于好奇而使毫秒数)? 是否有这样的事情: 或者,唯一的选择是使用从? 问题答案: 在MySQL中 以秒 为单位获取Unix时间戳: 详细信息:http : //dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_unix- timestamp 未经测试的

  • 问题内容: 在我可以设置例如 是否有任何符号(%something)以毫秒为单位返回当前时间? 问题答案: 没有完全符合您需要的Log4J符号。 以给定的模式返回当前日期,该模式由(放在方括号之间的模式)定义,但是没有给您以毫秒为单位的时间。 给出自 执行开始以来的 毫秒数。 实现所需目标的一种可能方法是扩展Log4j的行为,这要复杂得多,但是如果绝对必要,请按以下步骤进行: 自定义log4j(编

  • 问题内容: 我想每毫秒更改一次计时器,但是它没有按预期工作。 结果是 计时器以毫秒为单位更改为100(00:100),然后更改为01:00 = 40真实秒 邓肯方法: 结果:456680125.54539第一次打印 问题答案: 正如Martin在评论中所说,计时器的分辨率为50-100毫秒(0.05至0.1秒)。尝试以短于该间隔的时间运行计时器将无法获得可靠的结果。另外,计时器不是实时的。它们取决

  • 问题内容: 如何将格式的人类可读时间转换为Unix时间戳(以 毫秒为单位) ?我发现了很多类似的问题,但是没有找到这个特定的问题/答案。 问题答案: 在Python 3中,这可以分两个步骤完成: 将时间字符串转换为对象 将对象的时间戳乘以1000,以将其转换为毫秒。 例如这样: 输出: 接受您的时间字符串和格式字符串作为输入。该TIMESTRING(第一个参数)指定 什么 你真的想转换为对象。格式

  • 问题内容: 我有这个程序可以打印2个不同实例之间的时间差,但是它以秒为单位打印。我想以毫秒为单位打印它,以纳秒为单位打印另一个。 我该怎么做? 问题答案: 首先阅读time(7)手册页。 然后,您可以使用clock_gettime(2) syscall(您可能需要链接才能获取它)。 所以你可以尝试 即使硬件计时器具有纳秒级的分辨率,也不要期望它们具有纳秒级的精度。并且不要尝试测量持续时间少于几毫秒