将 HH:TT:SS 格式的时间戳转换为秒

Convert timestamp in HH:TT:SS format to seconds

我正在尝试在 py2.7 上创建一个代码来计算 HH:MM:SS 时间格式的时差并将其转换为秒。

结果我不得不像这样调用秒:

    timediff = a-b
    seconds = timediff.total_seconds() #This was the simple solution 

我收到的错误是:

AttributeError: 'datetime.timedelta' object has no attribute 'split'       

感谢 Ajay 和 J.F。塞巴斯蒂安的解决方案

您可以使用 datetime.timedelta

中的 totalseconds()
In [4]: t = time.strptime('00:01:25','%H:%M:%S')

In [5]: datetime.timedelta(hours=t.tm_hour,minutes=t.tm_min,seconds=t.tm_sec).total_seconds()
Out[5]: 85.0

以你的例子为例:

In [14]: t1='00:01:25'

In [15]: t2='00:01:10'
In [17]: t1 = time.strptime(t1,'%H:%M:%S')

In [18]: t2 = time.strptime(t2,'%H:%M:%S')
In [22]: datetime.timedelta(hours=t1.tm_hour,minutes=t1.tm_min,seconds=t1.tm_sec).total_seconds()-datetime.timedelta(hours=t2.tm_hour,minutes=t2.tm_min,seconds=t2.tm_sec).total_seconds()
Out[22]: 15.0

AttributeError: 'datetime.timedelta' object has no attribute 'split'

你快到了。 timediff 在您的代码中是 datetime.timedelta。要获得秒数,只需调用 seconds = timediff.total_seconds().