装饰器
def q(f):
def w(*args,**kwargs):
print('111')
print(f(*args,**kwargs))
return '333'
return w
@q
def e():
return '222'
print(e())
111
222
333
带参数的装饰器
def f(f=None,b=None,r=None,t=None):
def s(f):
def d(*args, **kwargs):
print(f'{b}')
a = f(*args, **kwargs)
print(a)
print(r)
print(t)
return 'dddd'
return d
if f == None:
return s
else:
return s(f)
@f(b='带常数',r=55,t=23)
def s():
print('我是s函数')
return 'qqq'
print(s())
print('---------------')
@f
def yy():
print('我是yy函数')
yy()
带常数
我是s函数
qqq
55
23
dddd
---------------
None
我是yy函数
None
None
None