装饰器:
定义了一个函数
想在运行时动态增加功能
不希望改动函数本身代码
比如,已有函数,期望在调用函数的时候,打印一条log:
可以使用高阶函数:
1. 可以接受函数做为参数
2. 可以返回函数
3. 接受一个函数,对其包装,然后返回一个新函数
示例:
def f1(x):
return x*2
def new_fn(f):
def fn(x):
print("call" + f.__name__ + "()")
return f(x)
return fn
aaa = new_fn(f1)
print( aaa(2) )
本文介绍了Python中装饰器的概念及其实现原理。通过使用高阶函数的方式,在不修改原始函数的基础上为其添加新的功能,例如记录函数调用的日志信息。这种技术在实际开发中非常有用,能够帮助开发者更加灵活地管理和扩展代码。
2250

被折叠的 条评论
为什么被折叠?



