我需要一种方法来找出一个 datetime.time 在另一个 datetime.time 之后有多长时间 很简单,但是......问题是我的时间值是 24 小时制的,所以它不像从另一个值否定一个值那么简单。相反,如果我要及时计数并且在午夜时间循环,我需要计算 time_b 在 time_a 之后多长时间,即
time_a = 09:00
time_b = 04:00
这里 time_b 是 time_a 之后的 19 小时
def time_after_time(time_a, time_b):
a_hour = time_a.hour
a_minute = time_a.minute
b_hour = time_b.hour
b_minute = time_b.minute
out_hour = b_hour - a_hour
out_minute = b_minute - a_minute
if out_hour < 0:
out_hour += 24
if out_minute < 0:
out_hour -= 1
out_minute += 60
return datetime.time(out_hour, out_minute)
这是我的第一次尝试,但它给出了错误的结果。
谁能想到一个更清洁/正确的方法来做到这一点?