python如何计算程序耗时

python如何计算程序耗时

作者:Elara发布时间:2026-01-06阅读时长:0 分钟阅读次数:39

用户关注问题

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

我想知道在Python里,有哪些方法可以用来计算一段代码的运行时间?

A

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

可以通过导入time模块,用time.time()记录代码开始和结束时的时间戳,二者相减即可得到运行时间。例如:

import time
start = time.time()
# 运行的代码
end = time.time()
print('耗时:', end - start, '秒')
Q
有没有更方便的工具来统计Python代码的运行时间?

感觉自己用time模块写起来很繁琐,有没有Python内置的或者第三方工具,能简洁地计算代码执行时间?

A

使用timeit模块和装饰器简化耗时统计

Python提供了timeit模块,专门用于准确测量小段代码运行时间。可以在命令行使用timeit,也可以在代码中调用。例如:

import timeit
print(timeit.timeit('sum(range(100))', number=10000))

此外,也可以自己定义装饰器,自动计算函数耗时,提高代码复用性。

Q
怎样测量Python程序某个函数的耗时时间?

我想单独测试某个函数的执行时间,有没有推荐的方法?

A

利用装饰器或contextlib测量函数耗时

可以通过编写装饰器来自动打印函数的耗时,示例如下:

import time
def timer(func):
    def wrapper(*args, **kwargs):
        start = time.time()
        result = func(*args, **kwargs)
        end = time.time()
        print(f'函数 {func.__name__} 的耗时: {end - start} 秒')
        return result
    return wrapper

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

或者使用contextlib的contextmanager创建计时上下文管理器,方便测量代码块耗时。