【发布时间】:2011-08-15 03:31:27
【问题描述】:
我相信这对你们中的许多人来说是一个明智的选择,但我发现自己对整个 datetime.timedelta 事情感到非常困惑。本质上,我在开始 startTime 时给某些东西打上时间戳,然后在流程结束时打上时间戳 endTime ,我试图在 HH:MM:SS 中获得差异,但没有运气。
当我打印 endTime - startTime 时出现此错误:
TypeError: unsupported operand type(s) for -: 'datetime.time' and 'datetime.time'
已编辑以包含最终结果:
startTime = datetime.now()
<... my looping process ...>
endTime = datetime.now()
calcdTime = endTime - startTime
print str(calcdTime)[:-4]
这将输出到:H:MM:SS.MM(从而从 timedelta 中剥离最后 4 个字符
【问题讨论】:
-
datetime.datetime和datetime.date支持减法,但datetime.time不支持。尝试改用datetime.datetime