python里装饰器
Python中的装饰器是一种特殊的语法,可以用于修改或扩展函数的行为。装饰器本质上是一个函数,它接收一个函数作为参数,并返回一个新的函数。
下面是一个简单的装饰器示例:
def decorator(func):
def wrapper():
print("Before function execution")
func()
print("After function execution")
return wrapper
@decorator
def say_hello():
print("Hello World")
say_hello()
运行上述代码会输出:
Before function execution
Hello World
After function execution
在上述示例中,decorator是一个装饰器函数,它接收一个函数作为参数func,并定义了一个内部函数wrapper。wrapper函数在被调用时会在函数执行前后分别打印一些信息。
@decorator是装饰器的语法糖,等价于say_hello = decorator(say_hello)。通过将装饰器应用到say_hello函数上,可以改变say_hello函数的行为,使其在执行前后打印额外的信息。
除了上述示例中的简单装饰器,还可以编写带有参数的装饰器或多层嵌套的装饰器。装饰器在Python中有广泛的应用,可以用于实现日志记录、性能分析、缓存等功能
原文地址: http://www.cveoy.top/t/topic/iJsH 著作权归作者所有。请勿转载和采集!