python如何获取执行时间差

python如何获取执行时间差

作者:Rhett Bai发布时间:2026-01-14阅读时长:0 分钟阅读次数:3

用户关注问题

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

我想知道如何使用Python来计算一段代码运行所花费的时间,有没有简单的方法可以实现?

A

使用time模块测量代码执行时间

可以使用Python内置的time模块,调用time.time()在代码运行前后记录时间点,然后计算两者的差值即可获得执行时间差。示例代码:

import time
start = time.time()

运行的代码

end = time.time()
print(f'执行时间:{end - start}秒')

Q
Python中有没有更精确的时间测量方法?

我需要比time.time()更高精度的时间,Python提供哪些工具可以用来获得更准确的时间差?

A

使用time.perf_counter()获得高精度时间

Python的time模块提供perf_counter()函数,它返回一个高精度的计时器值,适合测量短时间的代码执行时间。用法与time.time()类似,非常适合性能测试。

示例代码:
import time
start = time.perf_counter()

目标代码

end = time.perf_counter()
print(f'执行时间:{end - start}秒')

Q
如何在Python中使用装饰器来测量函数执行时间?

我想方便地测量多个函数的执行时间,有没有方法用装饰器来实现这类功能?

A

用装饰器实现函数执行时间统计

可以定义一个装饰器函数,内部用time模块记录函数开始和结束的时间,打印或返回执行时间。这样只要给目标函数添加装饰器,自动统计执行时间非常便捷。

示例代码:
import time

def timer(func):
def wrapper(*args, **kwargs):
start = time.perf_counter()
result = func(*args, **kwargs)
end = time.perf_counter()
print(f'{func.name}执行耗时:{end - start}秒')
return result
return wrapper

@timer
def example():
# 函数体
pass