【问题标题】:Find difference between two time strings in Python在 Python 中查找两个时间字符串之间的差异
【发布时间】:2018-10-08 03:35:30
【问题描述】:

我有两次字符串格式 HHMM,我想以分钟为单位找出差异。

我已尝试以下方法,但出现以下错误:

TypeError: 不支持的操作数类型 -: 'datetime.time' 和 'datetime.time'

import datetime  

a = "0628"
b = "0728"

aSep = a[:2] + ':' + a[2:]
bSep = b[:2] + ':' + b[2:]

timeA = datetime.datetime.strptime(aSep, '%H:%M').time()
timeB = datetime.datetime.strptime(bSep, '%H:%M').time()

diff = timeB -timeA
print diff

【问题讨论】:

  • time 对象不支持减法。如果您取消了.time(),您将有两个datetime 对象,它们确实支持减法。

标签: python datetime time


【解决方案1】:
import datetime  

a = "0628"
b = "0728"

timeA  = datetime.datetime.strptime(a, "%H%M")
timeB  = datetime.datetime.strptime(b, "%H%M")

print((timeB-timeA).total_seconds())
print(((timeB-timeA).total_seconds()/60.0))

输出:

3600.0
60.0

【讨论】:

  • "..我想以 分钟 为单位找出差异。"。 +1 不过
  • 我可以把这个除以 60 得到分钟吗?
  • @GrayRidley 如果您不介意输出中的小数(例如,12.31564 min),当然可以。否则,请使用 //,您将处于最大 +- 分钟关闭状态。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-16
  • 1970-01-01
  • 1970-01-01
  • 2021-01-02
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多