[英]Compare if datetime.timedelta is between two values
我在python中有一个datetime.timedelta时间对象(例如00:02:00),我想检查该时间是否小于5分钟且大于1分钟。
我不确定如何构造timedelta对象,也不确定这是否是比较时间的正确格式。 有谁知道最有效的方法吗?
因此,如果您使用严格且精确地格式为'HH:MM:SS'
的字符串timedelta
,则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
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.