装饰器是 Python 中一种强大的功能,允许你在不修改原函数代码的情况下添加额外的功能。下面是一个简单的装饰器案例,展示了如何创建和使用装饰器:
# 定义装饰器函数
def my_decorator(func):
def wrapper():
print("Something is happening before the function is called.")
func()
print("Something is happening after the function is called.")
return wrapper
# 使用装饰器
@my_decorator
def say_hello():
print("Hello!")
# 调用被装饰后的函数
say_hello()
在这个案例中,my_decorator
是一个装饰器函数,它接受一个函数作为参数,然后返回一个包装函数 wrapper
。wrapper
函数在调用原始函数之前和之后分别打印消息。
通过 @my_decorator
语法,我们将装饰器应用到 say_hello
函数上。当我们调用 say_hello()
函数时,实际上是调用了经过装饰后的函数,输出结果如下:
Something is happening before the function is called.
Hello!
Something is happening after the function is called.
这个例子展示了如何使用装饰器来在函数执行前后添加额外的逻辑,而不需要修改原始函数的定义。装饰器为 Python 提供了一种灵活而强大的方式来扩展函数的功能。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。