Django Python 如何计算给定两个时间字符串的时间差
Django Python how to calculation time difference given two time strings
在 Django Python 中,我有 2 个 HH:mm 的时间字符串,如何获得持续时间(差异)?
例如:
15:30 and 11:00 ---> difference is 04:30
19:28 and 12:25 ---> difference is 07:03
我们可以首先将字符串解析为 datetime
对象:
from datetime import datetime, time
t1 = datetime.strptime(time_str1, '%H:%M')
t2 = datetime.strptime(time_str2, '%H:%M')
然后我们可以得到datetime
个对象之间的绝对差:
dt = abs(t2 - t1)
我们现在可以像这样计算小时数和分钟数:
t = time(dt.seconds // 3600, (dt.seconds // 60) % 60)
然后我们可以用 strftime
:
打印那个数字
t.strftime('%H:%M')
或作为函数:
from datetime import datetime, time
def time_diff(time_str1, time_str2):
t1 = datetime.strptime(time_str1, '%H:%M')
t2 = datetime.strptime(time_str2, '%H:%M')
dt = abs(t2 - t1)
return time(dt.seconds // 3600, (dt.seconds // 60) % 60).strftime('%H:%M')
例如:
>>> time_diff('15:30', '11:00')
'04:30'
>>> time_diff('19:28', '12:25')
'07:03'
在 Django Python 中,我有 2 个 HH:mm 的时间字符串,如何获得持续时间(差异)?
例如:
15:30 and 11:00 ---> difference is 04:30
19:28 and 12:25 ---> difference is 07:03
我们可以首先将字符串解析为 datetime
对象:
from datetime import datetime, time
t1 = datetime.strptime(time_str1, '%H:%M')
t2 = datetime.strptime(time_str2, '%H:%M')
然后我们可以得到datetime
个对象之间的绝对差:
dt = abs(t2 - t1)
我们现在可以像这样计算小时数和分钟数:
t = time(dt.seconds // 3600, (dt.seconds // 60) % 60)
然后我们可以用 strftime
:
t.strftime('%H:%M')
或作为函数:
from datetime import datetime, time
def time_diff(time_str1, time_str2):
t1 = datetime.strptime(time_str1, '%H:%M')
t2 = datetime.strptime(time_str2, '%H:%M')
dt = abs(t2 - t1)
return time(dt.seconds // 3600, (dt.seconds // 60) % 60).strftime('%H:%M')
例如:
>>> time_diff('15:30', '11:00')
'04:30'
>>> time_diff('19:28', '12:25')
'07:03'