从固定日期时间测量经过的时间

Measure elapsed time from fixed datetime

我正在尝试测量从固定时间开始我的代码已经过去了多少分钟,假设是那天的 8:30 上午。如果我在凌晨 12 点打开我的代码,它应该会看到 210 分钟已经过去。任何建议都会有很大帮助。谢谢

您可以导入 datetime 模块,其中有一个 class 同名,方法 datetime.datetime.now().

这个returns一个代表调用时间的对象。

这个对象有方法replace(),可以用来'change'时间到8:30,如果你这样调用它 - replace(hour=8, minute=30).

然后您可以创建另一个类似的对象但不替换时间,然后您可以简单地从第二个中减去第一个以获得作为日期时间对象的经过时间。

这将有 elapsed_time.seconds 以秒为单位为您提供时间变化,如果您想要以分钟为单位的时间,可以将其除以 60。

例子

import datetime

time_A = datetime.datetime.now()
time_A = time_A.replace(hour=8, minute=30)

time_B = datetime.datetime.now()

elapsed_time = time_B - time_A

print(elapsed_time.seconds, "seconds have passed since 8:30 this morning")

如果您希望在特定时区使用此功能,您可以添加或减去当前时区的偏移量。因此,例如,如果你比 CST 早 5 小时,你可以让它从 3:30 中得到差异。