# 装饰器的作用
# 不想修改函数的调用方式( func() 还是这样调用),但是还想再原来函数前后添加功能
# timer() 就是一个装饰器函数,只对一个函数,有一些装饰作用
import time def func(): time.sleep(3) print('这是一个函数执行的内容') def timer(f): # 这是一个装饰器函数 def inner(): start = time.time() f() # 被装饰的函数 end = time.time() print('函数执行了%d秒' %(end-start) ) return inner func = timer(func) func() # 函数调用方法没有被改变
这个timer函数就是为了实现 计算func()函数运行用了多少时间而存在的
装饰器的原则:
开放封闭原则
开放:对扩展是开放的
封闭:对修改时封闭的
本文详细解析了Python装饰器的工作原理及其应用场景,通过实例展示了如何使用装饰器在不修改原函数的情况下,为其添加额外的功能,如计时器装饰器的实现。
7213

被折叠的 条评论
为什么被折叠?



