美文网首页
函数作用域LEGB

函数作用域LEGB

作者: 原来不语 | 来源:发表于2018-03-20 18:15 被阅读0次

    L>E>G>B
    L:local 函数内部作用域
    E:enclosing函数内部与内嵌函数之间
    G:global 全局作用域
    B:build-in 内置作用域(列表,元组,)


    image.png

    image.png

    闭包:Closure:内部函数中对enclosing作用域的变量进行引用

    函数实质与属性:
    1:函数是一个对象
    2:函数执行完成后内部变量回收
    3:函数属性
    4:函数返回值(返回的话不会被回收)


    image.png
    image.png

    闭包主要实现了代码的封装和复用


    image.png
    使用Python闭包。必须满足以下三个条件:

    我们必须有一个嵌套函数。
    这个嵌套函数必须引用一个非局部变量(包含它的范围内的变量)。
    封闭范围必须返回此功能。

    装饰器

    1:装饰器用来装饰函数
    2:返回一个函数对象
    3:被装饰函数标识符指向返回的函数对象
    4:语法糖 @dec

    image.png

    @dec 作用等于my_sum= dec(my_sum)

    image.png

    相关文章

      网友评论

          本文标题:函数作用域LEGB

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