time
**time** 函数是一个 Linux 命令,用于测量程序的运行时间,它返回一个包含以下信息的元组:
总 CPU 时间(用户模式和内核模式)
总真实时间(从程序开始到结束的时间)
用户模式 CPU 时间
内核模式 CPU 时间
使用方式:
import time
start = time.time() 记录开始时间
执行需要测量的代码
end = time.time() 记录结束时间
elapsed_time = end - start 计算运行时间
datetime
**datetime** 模块提供了一个 **now()** 函数,用于获取当前日期和时间。通过将当前时间减去开始时间,可以计算出运行时间。
使用方式:
import datetime
start = datetime.datetime.now() 记录开始时间
执行需要测量的代码
end = datetime.datetime.now() 记录结束时间
elapsed_time = end - start 计算运行时间
timeit
**timeit** 模块提供了 **timeit.Timer** 类,它允许对代码进行多次计时并计算平均运行时间。它还提供了创建计时器的便捷 。
使用方式:
import timeit
timer = timeit.Timer("stmt", "setup") 创建计时器对象
elapsed_time = timer.timeit(number=1000) 运行代码 1000 次并计算平均运行时间
注意事项
* **time** 函数的时间分辨率为 1 微秒。
* **datetime.now()** 函数的时间分辨率为毫秒。
* **timeit** 模块提供了更高的精度,但它对代码执行的影响比其他 更大。
* 选择最合适的函数取决于所需的精度和代码性能要求。