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

时间:2015-06-03 14:11:09

标签: python python-2.7 split timedelta python-datetime

我试图在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. Sebastian的解决方案

2 个答案:

答案 0 :(得分:1)

您可以使用totalseconds()

中的datetime.timedelta
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

答案 1 :(得分:0)

  

AttributeError:'datetime.timedelta'对象没有属性'split'

你几乎就在那里。代码中的timediffdatetime.timedelta。要获得秒数,只需致电seconds = timediff.total_seconds()