用Python计算时间(datetime.timedelta?)

cho*_*how 9 python datetime

我相信这对你们很多人来说是一个nobrainer,但我发现自己真的很困惑整个datetime.timedelta的事情.基本上我在开始时startTime加上一些东西,然后我给这个过程结束时间戳endTime,我正试图在HH中找到差异:MM:SS并且没有运气.

打印时出现此错误endTime - startTime:

TypeError: unsupported operand type(s) for -: 'datetime.time' and 'datetime.time'
Run Code Online (Sandbox Code Playgroud)

编辑包括最终结果:

startTime = datetime.now()
<... my looping process ...>
endTime = datetime.now()
calcdTime = endTime - startTime
print str(calcdTime)[:-4]
Run Code Online (Sandbox Code Playgroud)

输出到:H:MM:SS.MM(从而剥离最后4个字符 timedelta

Woo*_*ble 10

使用datetime而不是a time.如果没有约会,从另一次减去一次是没有意义的; 你不能只假设他们在同一天,而左操作数是第一位的.


agf*_*agf 5

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

import time

starttime = time.time()

# do stuff

endtime = time.time()

elapsed = endtime - starttime
print elapsed
Run Code Online (Sandbox Code Playgroud)

这将为您提供以秒为单位的经过时间.这通常比拥有一个更方便timedelta.