比较python中的时间增量
我有一个variables是<type 'datetime.timedelta'>
,我想比较它与特定的值。
可以说d产生这个datetime.timedelta
值0:00:01.782000
我想比较它是这样的:
#if d is greater than 1 minute if d>1:00: print "elapsed time is greater than 1 minute"
我试图转换datetime.timedelta.strptime()
但似乎工作。 有一个更简单的方法来比较这个值吗?
你必须用指定的时间创build一个新的timedelta
:
d > timedelta(minutes=1)
或者这个稍微更完整的脚本将有助于阐述:
import datetime from time import sleep start = datetime.datetime.now() sleep(3) stop = datetime.datetime.now() elapsed = stop - start if elapsed > datetime.timedelta(minutes=1): print "Slept for > 1 minute" if elapsed > datetime.timedelta(seconds=1): print "Slept for > 1 second"
输出:
Slept for > 1 second
你只需要从零开始创buildtimedelta
对象,之后的比较是微不足道的:
>>> a = datetime.timedelta(minutes=1) >>> b = datetime.timedelta(minutes=1, seconds=1) >>> a < b True >>> a > b False
纠正我,如果我错了,但我认为你也可以使用以下内容:
代替
if elapsed > datetime.timedelta(seconds=1):
你可以说
if elapsed.seconds > 1:
if d.total_seconds() > 60: print("elapsed time is greater than 1 minute")
但是它需要python 2.7+