python实现计时器(装饰器)
1.写一个装饰器,查看函数执行的时间
import time
# 装饰器run_time,@run_time加在谁头上,谁就是参数fun
def run_time(fun):
start_time = time.time()
fun()
end_time = time.time()
print("程序运行时间为:{} 秒".format(str(round((end_time - start_time), 1))))
return end_time - start_time
# 耗时任务task
@run_time
def task():
time.sleep(3)
总结:总体思想就是 用函数运行后的当地时间减去函数运行前的当地时间。关于装饰器为什么要用双层函数嵌套,是因为装饰器的本意是原函数的代码和调用方式,所以要求warper连同原函数和增加的功能封装在一起
一起返回。
全世界的程序员们联合起来吧!