Python 装饰器 (Decorator)
大家好!今天我们来聊聊Python的装饰器 Decorator。
装饰器是Python中一种强大的功能,它允许你修改或增强函数或方法的行为, 而无需修改其原始代码。本质上,装饰器是一个接受函数作为参数并返回一个新函数的函数。 这个新函数通常是原始函数的包装器,它在调用原始函数之前或之后添加一些额外的功能。 例如,你可以使用装饰器来记录函数的调用、验证函数的参数、或者实现缓存。 例子中,my_decorator函数有个参数叫func,函数内部定义了一个函数叫wrapper, 函数返回wrapper,wrapper内部在func函数执行前后增加了打印代码。 装饰器使用@符号放在函数say_hello函数定义之前。 也就是说say_hello执行时,先打印Before,再打印hello,再打印After。
希望这个简单的例子能帮助你理解Python的Decorator!
代码示例
def my_decorator(func):
def wrapper():
print("Before")
func()
print("After")
return wrapper
@my_decorator
def say_hello():
print("Hello!")
say_hello()