【发布时间】:2018-05-15 06:29:43
【问题描述】:
t1 = '11:19:04'
t2 = '11:19:07'
采用这种格式:H:M:S
我怎样才能得到两个字符串之间的时间差?
【问题讨论】:
t1 = '11:19:04'
t2 = '11:19:07'
采用这种格式:H:M:S
我怎样才能得到两个字符串之间的时间差?
【问题讨论】:
您需要导入包含将字符串时间转换为日期时间对象的方法的日期时间模块,一旦您将时间转换为日期时间对象,您可以使用它简单地减去它们,
import datetime
t1 = '11:19:04'
t2 = '11:19:07'
t1_time=datetime.datetime.strptime(t1,"%H:%M:%S")
t2_time=datetime.datetime.strptime(t2,"%H:%M:%S")
print t2_time-t1_time
0:00:03
【讨论】:
没有日期时间模块的替代方案:
t1 = '11:19:04'
t2 = '11:19:07'
def t2s(t):
return sum(a*b for a, b in zip((int(x) for x in t.split(':')), (3600, 60, 1)))
print(t2s(t1) - t2s(t2))
它以秒数的形式返回差异。
【讨论】:
演示:
import datetime
t1 = '11:19:04' 'From'
t2 = '11:19:07' 'Till'
t1_time = datetime.datetime.strptime(t1, "%H:%M:%S")
t2_time = datetime.datetime.strptime(t2, "%H:%M:%S")
print t2_time - t1_time
【讨论】: