我在python中有一个datetime.timedelta时间对象(例如00:02:00)我想检查这个时间是否小于5分钟且大于1分钟。
我不确定如何构建timedelta对象,我也不确定这是否是比较时间的正确格式。有人会知道最有效的方法吗?
答案 0 :(得分:4)
因此,如果您使用格式为'HH:MM:SS'
的严格且准确的字符串开头,timedelta
不会直接提供字符串解析功能,但它会'不难做出一个:
import datetime
def parsedelta(hhmmss):
h, m, s = hhmmss.split(':')
return datetime.timedelta(hours=int(h), minutes=int(m), seconds=int(s))
如果您需要解析许多不同的变体,那么您最好还是寻找第三方软件包,例如dateutil
。
一旦有timedelta
个实例,您要求的检查很简单,例如:
onemin = datetime.timedelta(minutes=1)
fivemin = datetime.timedelta(minutes=5)
if onemin < parsedelta('00:02:00') < fivemin:
print('yep')
正如预期的那样,将显示yep
。