python如何记录运行时间

python如何记录运行时间

作者:Joshua Lee发布时间:2026-01-13阅读时长:0 分钟阅读次数:20

用户关注问题

Q
如何在Python中测量代码块的执行时间?

我想知道如何用Python来计算某段代码的运行时长,有哪些简单实用的方法?

A

使用time模块中的time函数测量代码执行时间

可以利用Python的time模块,获取代码开始和结束时的时间戳,二者相减即可得到运行时间。例如:

import time
start_time = time.time()

执行代码

end_time = time.time()
print(f"运行时间: {end_time - start_time}秒")

Q
有没有更精准的方式记录Python程序运行时间?

if需要更高精度的时间记录,Python推荐使用哪个模块或函数?

A

使用time模块中的perf_counter函数实现高精度计时

time.perf_counter()提供了更高分辨率的计时功能,适合精确计算代码执行时间。例如:

import time
start_time = time.perf_counter()

运行代码

end_time = time.perf_counter()
print(f"高精度运行时间: {end_time - start_time}秒")

Q
Python有没有内置工具方便计时且支持代码块自动执行?

想要轻松记录代码执行时间,有没有类似于装饰器或上下文管理器的工具?

A

使用contextlib模块创建计时上下文管理器或使用timeit模块

可以使用timeit模块快速测量代码执行时间,也能通过自定义上下文管理器实现计时,比如:

from contextlib import contextmanager
import time

@contextmanager
def timer():
start = time.perf_counter()
yield
end = time.perf_counter()
print(f"代码块运行时间: {end - start}秒")

用法:
with timer():
# 代码块
pass

timeit模块适合多次执行测试,展示平均执行时间。