第一阶段(6):带参数的装饰

前几篇我们对装饰器已经做了非常好的总结,今天就剩下最后一个类型,带参数的装饰器

废话不多说上代码

def canshu(a):
print(a)
def wrapper(func):
print('我是wrapper')
def inner(*args,**kwargs):
print('我是inner')
print(func.__name__)
func(args,kwargs)
return inner
return wrapper


# wrapper=canshu('大王八')
@canshu('大王八')
def test_A(a,b):
print('你是%s或者%s'%a,b)
if __name__ == '__main__':
test_A('小王八','老王八')

结果

 

 结论,是不是很简单,那就不多说了,带参数的装饰器就是在原来函数装饰器外面又套了一层canshu方法用来接受语法糖的参数,整体结构和以前是一样的

posted @ 2021-11-26 11:24  Tester-**  阅读(36)  评论(0编辑  收藏  举报