如何在 Python 中测量经过的时间?

新手上路,请多包涵

我想测量执行功能所花费的时间。我无法让 timeit 工作:

 import timeit
start = timeit.timeit()
print("hello")
end = timeit.timeit()
print(end - start)

原文由 gilbert8 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 397
1 个回答

使用 time.time() 测量两点之间经过的挂钟时间:

 import time

start = time.time()
print("hello")
end = time.time()
print(end - start)

这给出了以秒为单位的执行时间。


自 Python 3.3 以来的另一种选择可能是使用 perf_counterprocess_time ,具体取决于您的要求。在 3.3 之前,建议使用 time.clock (感谢 Amber )。但是,它目前已被弃用:

在 Unix 上,将当前处理器时间返回为以秒为单位的浮点数。精度,实际上是“处理器时间”含义的定义,取决于同名的 C 函数。

在 Windows 上,此函数基于 Win32 函数 QueryPerformanceCounter() 返回自第一次调用此函数以来经过的挂钟秒数,作为浮点数。分辨率通常优于一微秒。

_自 3.3 版后已弃用_:此函数的行为取决于平台: 使用 perf_counter()process_time() 代替,根据您的要求,具有明确定义的行为。

原文由 NPE 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题