- 装饰器本质上是一个python函数,它可以让其他函数在不需要做任何代码变动的前提下增加额外功能,装饰器的返回对象也是一个函数。一定要注意装饰器是在不需要做任何代码变动的前提下,没有这个前提装饰器便没有存在的必要了。
- 装饰器大量应用于有切面编程需求的场景,如:日志插入,性能测试,事务处理等,这里不细说,有兴趣可以自己搜索切面编程。装饰器的作用就是为已经存在的函数对象添加新的功能。
装饰器格式如下
def my_decorator(func):#装饰器
def new_func:
...#新功能
func()
...#新功能
return new_func
@my_decorator#放到目标函数定义之前
def func():#目标函数
...#原来功能
func()
@my_decorator语法糖,相当于func=my_derorator(func) 我们也可以直接这么写,只不过用语法糖会使代码更简洁一点
- 装饰器支持目标函数多个参数,也支持装饰器本身有多个参数
17万+

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



