为了账号安全,请及时绑定邮箱和手机立即绑定

如何检查两个日期之间的差异(以秒为单位)?

如何检查两个日期之间的差异(以秒为单位)?

慕妹3146593 2019-11-26 15:20:36
必须有一种更简单的方法来执行此操作。我有想要经常刷新的对象,因此我想记录它们的创建时间,对照当前时间戳进行检查,并根据需要刷新。事实证明datetime.datetime很困难,我也不想深入ctime库。这样的事情有什么容易的吗?
查看完整描述

3 回答

?
翻阅古今

TA贡献1780条经验 获得超5个赞

如果要计算两个已知日期之间的差异,请使用total_seconds以下方法:


import datetime as dt


a = dt.datetime(2013,12,30,23,59,59)

b = dt.datetime(2013,12,31,23,59,59)


(b-a).total_seconds()

86400.0


#note that seconds doesn't give you what you want:

(b-a).seconds

0


查看完整回答
反对 回复 2019-11-26
?
HUWWW

TA贡献1874条经验 获得超12个赞

import time  

current = time.time()


...job...

end = time.time()

diff = end - current

那对你有用吗?


查看完整回答
反对 回复 2019-11-26
?
喵喵时光机

TA贡献1846条经验 获得超7个赞

>>> from datetime import datetime


>>>  a = datetime.now()


# wait a bit 

>>> b = datetime.now()


>>> d = b - a # yields a timedelta object

>>> d.seconds

7

(7将是您在上面等待的时间长短)


我发现datetime.datetime非常有用,因此,如果您遇到了复杂或尴尬的情况,请告诉我们。


编辑:感谢@WoLpH指出,不一定总是要刷新得如此频繁,以至于日期时间会接近。通过考虑增量中的天数,您可以处理更长的时间戳差异:


>>> a = datetime(2010, 12, 5)

>>> b = datetime(2010, 12, 7)

>>> d = b - a

>>> d.seconds

0

>>> d.days

2

>>> d.seconds + d.days * 86400

172800


查看完整回答
反对 回复 2019-11-26
  • 3 回答
  • 0 关注
  • 444 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号