python练习题之一个记录函数运行的装饰器

Posted 年轻人——001

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python练习题之一个记录函数运行的装饰器相关的知识,希望对你有一定的参考价值。


1.写一个装饰器,查看函数执行的时间


import datetime
import time
def jishi(fun):
def warper():
start_time = datetime.datetime.now()
fun()
end_time = datetime.datetime.now()
haoshi = (end_time-start_time).total_seconds()
print("函数运行耗时{}".format(haoshi))
return warper()

@jishi
def yunsuan():
time.sleep(2)
for x in range(100):
print(x)
yunsuan()


总结:总体思想就是 用函数运行后的当地时间减去函数运行前的当地时间。关于装饰器为什么要用双层函数嵌套,是因为装饰器的本意是原函数的代码和调用方式,所以要求warper连同原函数和增加的功能封装在一起

一起返回。

以上是关于python练习题之一个记录函数运行的装饰器的主要内容,如果未能解决你的问题,请参考以下文章

python基础之====函数对象函数嵌套名称空间与作用域装饰器

Python编程之基础知识练习_002

python3练习-装饰器

python每日习题:自己封装失败重跑装饰器

python之装饰器

python基础之装饰器