Python 程序统计时间的三种方式

统计程序执行时间有三种方式: 1. datetime.datetime.now() 通过当前日期计算时间差; 2. time.time()通过时间戳计算时间差; 3. time.clock()获取CPU执行时间 (自python38 中被移除,取而替代的是 time.perf_counter()time.process_time()

# 方式一
import datetime
starttime = datetime.datetime.now()
# ...
endtime = datetime.datetime.now()
print(f"{(endtime - starttime).seconds}s")

# 方式二
import time
start = time.time()
# ...
end = time.time()
print(end-start)
print(f"{int(end-start)}s")

# 方式三 time.clock()
start = time.clock()
time.perf_counter()
# ...
end = time.clock()
print end-start

# 方式三 time.perf_counter()

time.perf_counter()

(以小数表示的秒为单位)返回一个性能计数器的值,即用于测量较短持续时间的具有最高有效精度的时钟。 它会包括睡眠状态所消耗的时间并且作用于全系统范围。 返回值的参考点未被定义,因此只有两次调用之间的差值才是有效的。相似的,time.perf_counter_ns()返回纳秒。

time.process_time()

(以小数表示的秒为单位)返回当前进程的系统和用户 CPU 时间的总计值。 它不包括睡眠状态所消耗的时间。 根据定义它只作用于进程范围。 返回值的参考点未被定义,因此只有两次调用之间的差值才是有效的。相似的,time.process_time_ns()返回纳秒。