闭包

作者: zhangxiaohao | 来源:发表于2019-03-31 22:41 被阅读79次

    有些概念常学常忘,闭包算是一个,先记录一下备忘。

    先上概念,闭包指得是:嵌套的函数,内部(内层)函数调用外部函数的变量或参数,这个内部函数就是闭包函数。

    def outer(arg):

          a='我是外层函数的变量'

           def inner():

                  print(a)

                  print(arg)

         return inner

    inner()函数就是闭包函数。

    常用调用方式如下:

    inn=outer(‘我是外层函数的参数’)

    inn()

    闭包主要借用了面向对象的编程理念,要实现开放封闭原则,即类或函数内部要封闭,内部功能不要随意改动,外部是开放的,修改类或函数的功数的功能在外部实现,切忌在内部修改。比如底层架构已经打好。就不要动底层架构,如非要改必然上层成千上万的基于底层的功能都要变。

    根据上层谁变就更改谁的原则,就要用的闭包方式,比较常见的就是装饰器。

    相关文章

      网友评论

        本文标题:闭包

        本文链接:https://www.haomeiwen.com/subject/lsdpbqtx.html