前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >通俗理解Python中的装饰器

通俗理解Python中的装饰器

原创
作者头像
周辰晨
发布2024-04-11 10:37:23
830
发布2024-04-11 10:37:23
举报
文章被收录于专栏:Python小册Python小册

装饰器是 Python 中一种强大的功能,允许你在不修改原函数代码的情况下添加额外的功能。下面是一个简单的装饰器案例,展示了如何创建和使用装饰器:

代码语言:javascript
复制
# 定义装饰器函数
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 是一个装饰器函数,它接受一个函数作为参数,然后返回一个包装函数 wrapperwrapper 函数在调用原始函数之前和之后分别打印消息。

通过 @my_decorator 语法,我们将装饰器应用到 say_hello 函数上。当我们调用 say_hello() 函数时,实际上是调用了经过装饰后的函数,输出结果如下:

代码语言:javascript
复制
Something is happening before the function is called.
Hello!
Something is happening after the function is called.

这个例子展示了如何使用装饰器来在函数执行前后添加额外的逻辑,而不需要修改原始函数的定义。装饰器为 Python 提供了一种灵活而强大的方式来扩展函数的功能。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档