使用上下文管理器来执行此操作很有趣,它可以自动记住进入 with 块时的开始时间,然后在退出块时冻结结束时间。使用一些小技巧,您甚至可以从相同的上下文管理器函数中获取块内的运行时间计数。
核心库没有这个(但可能应该有)。一旦到位,您可以执行以下操作:
with elapsed_timer() as elapsed:
# some lengthy code
print( "midpoint at %.2f seconds" % elapsed() ) # time so far
# other lengthy code
print( "all done at %.2f seconds" % elapsed() )