首页 > 编程语言 > 详细

python闭包和装饰器的理解

时间:2018-06-29 22:15:13      阅读:384      评论:0      收藏:0      [点我收藏+]

闭包:

两个函数的嵌套,外部函数返回内部函数的引?,外部函数?定有参数

def 外部函数(参数):

  def 内部函数():

    pass

return 内部函数

他跟函数之间的区别:

1.格式两个函数嵌套

2.闭包外部函数的参数可以在内存中保持

装饰器是什么:闭包加@xxx

装饰器的作?:在不改变原先的函数值跟调?的?式,添加额外的功能

装饰器的代码:

def set_fun(func):

  def call_fun(*args,**kwargs):

    return func(*args,**kwargs)

return call_fun

@set_fun

def test():

pass

1.装饰前的函数test,是由func指向的      2.装饰后的函数test,实际是call_fun     3.装饰前test,装饰后test,装饰后的test(call_fun)三者保持?致   4.装饰器不能去改变函数的调??式跟返回值

?个装饰器?个函数的理解

技术分享图片

技术分享图片?个装饰器装饰?个函数的图解:

技术分享图片

?个装饰器装饰器?个函数内存图了解:

技术分享图片

python闭包和装饰器的理解

原文:https://www.cnblogs.com/168vincent/p/9245544.html

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