我试图找出 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
关于python - 如何在 Python 中找到两次之间的差异?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50667938/