Python,以小时为单位的时间返回差异

时间:2017-01-29 18:51:18

标签: python time

就像我可以说的那样简单,我有两个日期时间,它们都是字符串,然后转换为datetime对象。如何将以小时为单位格式化的时间差异作为整数返回,而不是“datetime.timedelta”对象?

  >>> start = '2016-10-21 00:00:00'
  >>> stop = '2017-01-5 10:05:19'

  >>> start = datetime.datetime.strptime(start, "%Y-%m-%d %H:%M:%S")
  >>> stop = datetime.datetime.strptime(stop, "%Y-%m-%d %H:%M:%S")

  >>> stop - start
  datetime.timedelta(76, 36319)

2 个答案:

答案 0 :(得分:0)

您可以通过执行以下操作将timedelta转换为秒:

>>> datetime.timedelta(76, 36319).total_seconds()
6602719.0

然后,您可以相应地将其转换为分钟或小时。

当timedelta表示的时间量不是一个完整的小时数,而是几小时几分钟/秒时,您需要决定该怎么做。

答案 1 :(得分:0)

import datetime

start = datetime.datetime.strptime(start, "%Y-%m-%d %H:%M:%S")
stop = datetime.datetime.strptime(stop, "%Y-%m-%d %H:%M:%S")

(stop-start).total_seconds() / 3600