繁体   English   中英

在 Python (datetime.timedelta?) 中计算时间

[英]Calculating Time in Python (datetime.timedelta?)

我相信这对你们中的很多人来说是一件轻而易举的事,但我发现自己对整个 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而不是time 没有日期,从另一个中减去一个时间是没有意义的; 您不能只假设它们在同一天并且左操作数排在第一位。

根据您对信息的处理方式,您可能只想使用time.time

import time

starttime = time.time()

# do stuff

endtime = time.time()

elapsed = endtime - starttime
print elapsed

这将为您提供以秒为单位的经过时间。 这通常比使用timedelta更方便。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM