编程语言
首页 > 编程语言> > Python之闭包

Python之闭包

作者:互联网

'''
闭包 : 就是将某些数据包裹起来,以达到保护数据的目的.本质还是利用了大的作用域无法访问小的作用域中的变量;
    基本格式 :
        def outer() :
            被保护数据
            def inner() :
                返回数据或对数据进行操作
            return inner    #切记这里返回的函数名,相当于返回一个函数,并且可通过该函数访问被保护数据;
     如 :
         def outer() :
             num1 = 3
             def inner() :
                 return num1;
         func = outer()    #调用outer函数返回inner
         print(func())    #打印num1的值
    由于num1所在作用域小于func所在作用域,因此我们无法通过当前作用域对num1进行修改,使得数据得到了保护;又由于调用func函数的时间不定,而每次调用func函数又都可以访问num1
    ,由此可见num1常驻内存,始终存在;
'''

标签:outer,num1,Python,之闭,作用域,inner,func,def
来源: https://blog.51cto.com/14258683/2388107