首页 > 编程语言 > 详细

Python-装饰器

时间:2020-02-09 21:25:01      阅读:71      评论:0      收藏:0      [点我收藏+]

装饰器

开放封闭原则:

1.对功能的扩展开放

2.对修改源代码及调用方式封闭

装饰器:不修改源代码及调用方式的前提下,额外增加新功能

def foo():
    print(缘起缘灭缘终尽)
def warpper(func):  # func == foo函数的内存地址
    def inner():
        print(花开花落花归尘)
        func()
        print(故事已完)
     return inner  # 不能加括号
foo = warpper(foo)  # 不能加括号
foo()
     
def warpper(f):
    def inner():
        print(清风以北过南巷)
        f()
        print(南巷故人不知归)
    return inner
# python帮咱们做的一个东西,语法糖 @warpper
def func(): print(被修饰的函数1) @wrapper def index() print(被修饰的函数2) func() index()

pytho帮咱们做的东西,语法糖

  • 要将语法糖放在被装饰的函数正上方,先执行语法糖

  • 在使用语法糖时,要将装饰器写在语法糖的前面

Python-装饰器

原文:https://www.cnblogs.com/womenzt/p/12288500.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!