使用time.time()适合简单计时,通过前后时间戳相减得耗时;timeit模块可进行高精度测试,执行多次取平均值更准确;装饰器方式能自动监控多个函数运行时间,提升代码复用性。

在 Python 开发中,计算函数运行时间常用的方法是使用 time 模块或 timeit 模块。选择哪种方式取决于你的需求:简单测试用 time.time(),精确测量建议用 timeit。
使用 time 模块粗略计时
适用于快速查看函数执行耗时,代码简单直观。
import timedef my_function():
模拟一些操作
sum(i for i in range(100000))start = time.time() my_function() end = time.time()
print(f"函数运行时间: {end - start:.4f} 秒")
立即学习“Python免费学习笔记(深入)”;
说明: time.time() 返回当前时间的时间戳(单位:秒),通过前后相减得到间隔。适合一次性调用的场景。
使用 timeit 模块进行精准测试
用于需要更高精度的性能测试,尤其适合对比不同实现方式的效率。
发卡宝是一个专业的软件卡密等虚拟商品在线交易平台,拥有多种兑换方式,费率低,结算快,正规企业平台一直稳定运营,24小时不间断提供自动发卡服务。【模板说明】试用版自带一套模板(响应式)【环境支持】PHP环境 / 200M或以上空间大小 / 开启父路径 / 设置index.php为默认首页 / 目录写入权限需要开启【数据库】MySQL【安装步骤】将文件上传至空间目录,运行“http://域名/inst
import timeitdef my_function(): sum(i for i in range(100000))
单次运行时间
time_taken = timeit.timeit(my_function, number=1000) print(f"运行 1000 次平均耗时: {time_taken:.6f} 秒")
说明: timeit.timeit(func, number=N) 会执行函数 N 次并返回总耗时,常用于排除系统波动影响,获得更稳定的结果。
用装饰器自动计时函数
如果多个函数都需要计时,可以封装成装饰器,提升代码复用性。
import time from functools import wrapsdef timer(func): @wraps(func) def wrapper(*args, *kwargs): start = time.time() result = func(args, **kwargs) end = time.time() print(f"{func.name} 执行耗时: {end - start:.4f} 秒") return result return wrapper
@timer def my_function(): sum(i for i in range(100000))
my_function() # 输出函数执行时间
说明: 装饰器方式无需修改原函数逻辑,只需添加 @timer 即可自动打印运行时间,适合开发调试阶段。
基本上就这些。日常调试用 time.time() 最快上手,做性能优化推荐 timeit,想批量监控函数可以用装饰器。不复杂但容易忽略细节,比如多次运行取平均值才更准确。










