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

TA贡献1874条经验 获得超12个赞
import time
current = time.time()
...job...
end = time.time()
diff = end - current
那对你有用吗?

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
添加回答
举报