• python全栈闯关--10-3、闭包


    1、定义

    嵌套函数,内部函数调用外部函数的变量,叫做闭包

    # 嵌套函数,内部函数调用外部函数的变量
    def outer():
        a = 1
        def inner():
            print(a)
        inner()
    outer()

    2、闭包的应用

    # 把内部函数返回,在外部调用避免重复的释放和创建变量a
    def outer():
        a = 1
        def inner():
            print(a)
        return inner
    f = outer()
    f()

    执行过程中,a=1在外部变量创建一次后,由于内部引用的存在,一直未消失。

    避免了a在运行过程中,重复创建、重复释放

    3、闭包简单应用

    from urllib.request import urlopen
    def get_url():
        url = 'https://www.baidu.com/'
        def get():
            ret = urlopen(url).read()
            print(ret)
        return get
    
    get_func = get_url()
    get_func()

    多次引用时,可以避免重复创建、释放url

  • 相关阅读:
    java前三章总结
    Java入门第二章
    java编程入门小结
    Java入门第二章
    java预习易错点
    计算机基础
    切换卡
    ajax
    水印4
    shuiyin3
  • 原文地址:https://www.cnblogs.com/zxw-xxcsl/p/11652797.html
Copyright © 2020-2023  润新知