zoukankan      html  css  js  c++  java
  • 闭包

    闭包:

      封闭的东西:保证数据的安全(最主要的作用)

      1.闭包只能存在嵌套函数中

      2.内层函数对外层函数非全局变量的引用(使用),就会形成闭包。被引用的非全局变量也称为自由变量,这个自由变量会与内层函数产生一个绑定关系,不会在内存中消失

    判断一个嵌套函数是否为闭包:

    def wrapper():
        a = 1
        def inner():
            print(a)
    
        return inner
    ret = wrapper()
    a = 1
    def wrapper():
        def inner():
            print(a)  # 没有对外层非全局变量的使用
    
        return inner
    ret = wrapper()
    def wrapper(a, b):
        def inner():
            print(a)
            print(b)
    
        return inner
    
    a = 2
    b = 3
    ret = wrapper(a, b)
    print(ret.__code__.co_freevars) # 如何用代码判断闭包 ***
  • 相关阅读:
    Freemarker空值判断
    php集成开发环境IDE
    mysql卸载
    Apache网站根目录
    冒泡排序
    线程操作
    通过滚轮改变图片大小
    Timer计时器
    写异常日志
    异常处理
  • 原文地址:https://www.cnblogs.com/GOD-L/p/13528595.html
Copyright © 2011-2022 走看看