Python装饰器是一种特殊类型的函数,它可以用来修改其他函数的行为。装饰器的语法是在被装饰的函数前面加上一个@符号,后面跟装饰器函数的名称。
下面是一个简单的装饰器示例:
def my_decorator(func):
def wrapper():
print("在被装饰的函数之前做一些事情")
func()
print("在被装饰的函数之后做一些事情")
return wrapper
@my_decorator
def say_hello():
print("Hello!")
say_hello()
输出结果:
在被装饰的函数之前做一些事情
Hello!
在被装饰的函数之后做一些事情
在这个示例中,my_decorator是一个装饰器函数,它接受一个函数作为参数,并返回一个新的函数wrapper。
wrapper函数在调用原始函数之前和之后执行一些额外的操作。
通过在say_hello函数前面加上@my_decorator,我们可以将say_hello函数传递给my_decorator进行装饰。