版权声明:本文为博主原创文章,转载请注明出处。 https://blog.csdn.net/qq_37887537/article/details/82191315
这是Python的函数装饰器!是一种比较高级的用法,学了PYthon一段时间才发现这一个高级特性。
里面有点绕,感觉本质上是一个衣服模板(装饰器),然后把它装饰到任何一个你想要装饰的人(函数)身上。
例如:我想在函数开始和结束时分别打印一些信息,假如有很多个函数:
def decorate(func):
def iner(num):
print("start ---")
ret = func(num)
print("return is ",ret)
return iner
def glor(num):
if num >5:
return num
else:
return 0
glor = decorate(glor)
glor(4)
glor(8)
运行结果:
start ---
return is 0
start ---
return is 8