Python中的装饰器是如何工作的?

原创 梦里梦外; 2025-03-07 20:51 17阅读 0赞

在Python中,装饰器(Decorator)是一种特殊类型的函数,它可以在不修改原函数代码的情况下,为原函数添加新的功能或者改变其行为。

装饰器的工作原理是:

  1. 创建一个装饰器函数,该函数通常接受一个或多个要被装饰的函数作为参数。

  2. 在装饰器函数中,添加额外的行为。例如,你可能会在内部调用另一个函数,然后返回被装饰的原始函数。

  3. 当你想给某个函数添加装饰时,只需将这个函数作为参数传递给你的装饰器函数即可。

举个例子:

  1. # 装饰器
  2. def my_decorator(func):
  3. def wrapper():
  4. print("Before the function is called.")
  5. func()
  6. print("After the function is called.")
  7. return wrapper
  8. # 原始函数
  9. @my_decorator
  10. def say_hello():
  11. print("Hello!")
  12. say_hello()

输出结果:

  1. Before the function is called.
  2. Hello!
  3. After the function is called.
文章版权声明:注明蒲公英云原创文章,转载或复制请以超链接形式并注明出处。

发表评论

表情:
评论列表 (有 0 条评论,17人围观)

还没有评论,来说两句吧...

相关阅读

    相关 python 装饰

    什么是装饰器 装饰器就是在不做任何代码变动的前提下去增加额外的功能,python中装饰器的本质是一个函数。主要应用于 插入日志,性能测试,事务处理,缓存,权限校验等场景。

    相关 python装饰

    1.装饰器 装饰器: 把一个函数当作参数,返回一个替代版的函数, 本质就是一个返回函数的函数 作用:在不改变原函数的基础上,给函数增加功能 例:说明装饰器的用法