首页技术文章正文

Python装饰器的理解

更新时间:2018-08-17 来源:黑马程序员技术社区 浏览量:

  python装饰器就是用于拓展原来函数功能的一种函数,这个函数的特殊之处在于它的返回值也是一个函数,使用python装饰器的好处就是在不用更改原函数的代码前提下给函数增加新的功能。一般而言,我们要想拓展原来函数代码,最直接的办法就是侵入代码里面修改,但是有时候需要修改的代码特别重要,不允许在里面修改,这时候就需要用到装饰器了。

  这里的set_fun函数就是最原始的装饰器,它的参数是一个函数,然后返回值也是一个函数。其中作为参数的这个函数test()就在返回函数wrapper()的内部执行。然后在函数test()前面加上@set_fun,test()函数就相当于被注入了新的功能,现在只要调用test(),它就已经变身为“新的更多功能”的函数了。

1534498001841_1.jpg

  
多个装饰器执行的顺序就是从最后一个装饰器开始,执行到第一个装饰器,再执行函数本身。

1534498034342_2.jpg  




作者:黑马程序员人工智能+Python培训学院  
首发:http://www.itheima.com/special/pythonzly/index.shtml

分享到:
在线咨询 我要报名
和我们在线交谈!