1. 程式人生 > >(十六)閉包函數

(十六)閉包函數

turn 基本 名稱空間 inner 代碼包 條件 滿足 pri 閉包

函數嵌套+名稱空間+函數對象

什麽是閉包函數

條件1. 定義在函數內的函數

條件2. 該函數體代碼包含對該函數外層作用域中名字的引用。

註意:函數外層指的不是全局作用域

滿足兩個條件,該函數稱為閉包函數
基本結構如下

def outter():
    x=1
    
    def inner():        #函數嵌套
        print(x)
    return inner()      #函數對象
outter( )               #執行outter,本質上是執行intter()

f=outter()
def f1():
    x=11111111111111    #作用域,只在函數定義階段生效,該位置修改值不生效
    f()
f1() 

(十六)閉包函數