Python考试题--第55道题目--怎样自定义包装器--2022年04月10日
原创1.装饰者的定义:
1装饰符是一种函数,它可以在不进行任何更改的情况下向函数添加附加功能。
2,可以插入日志, 性能测试, 事务处理、缓存等。
2、代码演示:
如果很难理解,可以看第三部分的例子,简单易懂:
from functools import wraps
def log(flag):
def decorate(func):
@wraps(func)
def _wrap(*args, **kwargs):
try:
if flag:
func(*args, **kwargs)
print(name, func.__name__)
except Exception as e:
print(e.args)
return _wrap
return decorate
@log(True) # 语法糖,这个修饰符的作用是打印出函数的函数名。
def add(a, b, c):
print(a + b + c)
add(1, 2, 3)

3.简单易懂的例子:
修饰符实际上是一个函数,该函数的输入是一个函数,该函数嵌套在该函数中,返回值是输入函数。
此示例在加法函数之前和之后添加开始标签和结束标签。
最初的加法函数只输出一个结果值。

添加上面的装饰符后,将出现开始和结束标签。

代码如下:
# 装饰符的函数,输入函数,然后嵌套内部函数,最后返回到输入函数。
def show(function):
def temp(*args, **kwargs):
print(-----开始--------)
rel = function(*args, **kwargs)
print(-----结束--------)
return rel
return temp
@show # 语法糖
def add(a,b,v):
print(a + b + v)
add(1, 2, 3) 版权声明
所有资源都来源于爬虫采集,如有侵权请联系我们,我们将立即删除
itfan123



