Skip to main content
 首页 » 编程设计

python之如何在 Python 中找到两次之间的差异

2025年05月04日23freeliver54

我试图找出 Python 中两次之间的区别。保证时间在同一天。

#For example 
s1 = '13:00'  
s2 = '12:58' 

这两次之间的时间差应该是 2 分钟。输出应该是:2

这是我的代码:

from datetime import datetime 
s1 = '13:00' 
s2 = '12:58' 
FMT = '%H:%M' 
tdelta = datetime.strptime(s2, FMT) - datetime.strptime(s1, FMT) 
print(tdelta) 

但它返回:

-1 day, 23:58:00 

我该如何解决这个问题并将我的时间返回为:2

请您参考如下方法:

您可以尝试使用 abs 作为结果,即 abs(datetime.strptime(s2, FMT) - datetime.strptime(s1, FMT)):

from datetime import datetime 
s1 = '13:00' 
s2 = '12:58' 
FMT = '%H:%M' 
tdelta = abs(datetime.strptime(s2, FMT) - datetime.strptime(s1, FMT)) 
print(tdelta) 

结果:

0:02:00 

更新:

正如下面评论中所建议的,如果您特别想要分钟的差异,您可以在tdelta中使用.total_seconds()/60:

from datetime import datetime 
s1 = '13:00' 
s2 = '12:58' 
FMT = '%H:%M' 
tdelta = datetime.strptime(s2, FMT) - datetime.strptime(s1, FMT) 
minutes_difference = abs(tdelta.total_seconds()/60) 
print(minutes_difference) 

结果:

2.0