装饰器不影响函数原有的功能,但增加新加功能
def func1(func): #
def func2(*arges, **kwarges):
print("excute func2")
return func(*arges, **kwarges)
return func2
@func1
def myfunc(*arges, **kwarges):
print(*arges)
for key, value in kwarges.items():
print(key, value)
print("hellow")
myfunc(5, 76, m=1, n=5)
输出结果为:
excute func2
5 76
m 1
n 5
hellow