我正在尝试根据给定的小时,分钟,秒和毫秒将字符串转换为日期时间对象,因此我可以找到两个字符串之间的时间差。如果有更好的方法可以做到这一点,请告诉我,那太好了。
日期时间对象的格式如下:
但是当我尝试减去转换为日期时间对象的两个字符串时,结果不正确。例如:
from datetime import datetime
format = '%H:%M:%S:%f'
x = '12:51:11:153'
time1 = datetime.strptime(x, format)
y = '13:51:11:153'
time2 = datetime.strptime(y, format)
difference = time2 - time1
print(difference)
"The print" = 0:00:00
我是否缺少某种格式,或者是否有一种特殊的方法来相互减去日期时间对象?另外,有没有更简单的方法?
答案 0 :(得分:0)
我认为您的解决方案是正确的。我无法重现。这是我的代码以及运行它的输出。
from datetime import datetime
import time
format = '%H:%M:%S:%f'
time1 = datetime.strptime("12:51:11:153", format)
time2 = datetime.strptime("13:51:11:153", format)
print((time2-time1).total_seconds())
-> 3600.0秒 (类型为浮动)
type(time2-time1)->
time2-time1 -> datetime.timedelta(seconds = 3600)