如何将时间对象转换为总分钟python

时间:2014-12-15 00:02:09

标签: python python-2.7 datetime

我有形式&00; 00:00:00.0000000'从中我只想提取浮点数分钟。从import time到目前为止,我有这个:

>>> reformat = time.strptime('00:05:36.0100000', '%H:%M:%S.%f0')
>>> print reformat
time.struct_time(tm_year=1900, tm_mon=1, tm_mday=1, tm_hour=0, tm_min=5, tm_sec=36, tm_wday=0, tm_yday=1, tm_isdst=-1)

似乎这应该跟time.getminutes(reformat)reformat.minutes()之类的东西一样。我无法找到这样的操作。

2 个答案:

答案 0 :(得分:3)

将日期字符串解析为datetime.datetime。由于日期字符串没有年,月或日,因此日期时间将假定日期为1900-1-1。如果我们减去datetime.datetime(1900,1,1),我们将获得具有total_seconds methoddatetime.timedelta对象。转换为分钟很容易:

中减去它
import datetime as DT
t1 = DT.datetime.strptime('00:05:36.0100000', '%H:%M:%S.%f0')
t2 = DT.datetime(1900,1,1)

print((t1-t2).total_seconds() / 60.0)

产量

5.60016666667

答案 1 :(得分:3)

如果是日期时间对象,即来自日期时间导入时间。 你可以简单地计算它

timeobject.hour*60+timeobject.minute+timeobject.second/60

由于你需要微小的分辨率,我怀疑是否需要第二甚至微秒的准确度