pandas中有一种简单的方法可以区分24小时,如下所示:
9:45 17:10
差异是7小时25分钟,即445分钟。
答案 0 :(得分:4)
不确定
>>> from pandas import Timestamp
>>> Timestamp('9:45')
Timestamp('2016-09-30 09:45:00')
>>> Timestamp('17:10')
Timestamp('2016-09-30 17:10:00')
>>> Timestamp('17:10') - Timestamp('9:45')
Timedelta('0 days 07:25:00')
>>> td = Timestamp('17:10') - Timestamp('9:45')
>>> td
Timedelta('0 days 07:25:00')
如果你真的需要几分钟的时间:
>>> td.seconds/60
445
>>>
只需仔细检查文档,Timedelta对象的seconds
属性返回:Number of seconds (>= 0 and less than 1 day)
。
所以,如果你想要分钟,要真正安全,请使用:
>>> td.delta # returns the number of nanoseconds
26700000000000
>>> td.delta * 1e-9 / 60
445.0
答案 1 :(得分:3)
我认为您也可以在不安装pandas的情况下使用Python标准库datetime.datetime
。
>>> t1 = datetime.datetime.strptime('09:45', '%H:%M')
>>> t2 = datetime.datetime.strptime('17:10', '%H:%M')
>>> t1
datetime.datetime(1900, 1, 1, 9, 45)
>>> t2
datetime.datetime(1900, 1, 1, 17, 10)
>>> td = t2 - t1
>>> td.total_seconds()
26700.0
>>> str(td)
'7:25:00'