在 Python 中,可以通过多种方式计算程序的耗时。以下是几种常见的方法:
方法 1:使用 time
模块
time
模块提供了简单的时间记录功能,可以用来计算代码块的执行时间。
import time# 记录开始时间
start_time = time.time()# 要测量的代码块
for i in range(1000000):pass# 记录结束时间
end_time = time.time()# 计算耗时
elapsed_time = end_time - start_time
print(f"程序耗时: {elapsed_time} 秒")
方法 2:使用 time.perf_counter()
time.perf_counter()
提供了更高精度的时间测量,适合用于测量短时间的代码块。
import time# 记录开始时间
start_time = time.perf_counter()# 要测量的代码块
for i in range(1000000):pass# 记录结束时间
end_time = time.perf_counter()# 计算耗时
elapsed_time = end_time - start_time
print(f"程序耗时: {elapsed_time} 秒")
方法 3:使用 datetime
模块
datetime
模块也可以用来计算时间差。
from datetime import datetime# 记录开始时间
start_time = datetime.now()# 要测量的代码块
for i in range(1000000):pass# 记录结束时间
end_time = datetime.now()# 计算耗时
elapsed_time = end_time - start_time
print(f"程序耗时: {elapsed_time.total_seconds()} 秒")
方法 4:使用 timeit
模块
timeit
模块专门用于测量小段代码的执行时间,适合用于性能分析。
import timeit# 要测量的代码块
code = """
for i in range(1000000):pass
"""# 测量执行时间
elapsed_time = timeit.timeit(code, number=1)
print(f"程序耗时: {elapsed_time} 秒")
总结
-
对于简单的耗时计算,可以使用
time.time()
或time.perf_counter()
。 -
如果需要更高精度的时间测量,推荐使用
time.perf_counter()
。 -
对于性能分析,特别是短时间的代码块,可以使用
timeit
模块。