9. 閉包
文章目錄
- 9. 閉包
- 9.1 函數參數
- 9.1.1 直接print函數名 → 輸出函數所在空間的地址
- 9.1.2 函數名存放的是函數所在空間地址
- 9.1.3 函數就可以直接當做參數使用了
- 9.2 閉包
- 9.2.1 定義
- 9.2.2 構成條件
- 9.2.3 定義閉包的標准語法格式
- 9.3 閉包的使用
- 9.4 閉包內修改外部變量
9.1 函數參數
9.1.1 直接print函數名 → 輸出函數所在空間的地址
同樣一個函數名可以像普通變量賦值
9.1.2 函數名存放的是函數所在空間地址
函數名()執行函數名所存放空間地址中的代碼
9.1.3 函數就可以直接當做參數使用了
9.2 閉包
作用:閉包可以保存函數內的變量,不會隨著函數調用完而銷毀
9.2.1 定義
- 在函數嵌套的前提下,內部函數使用了外部函數的變量,並且外部函數返回了內部函數,我們把這個使用外部函數變量的內部函數稱為閉包。
9.2.2 構成條件
9.2.3 定義閉包的標准語法格式
9.3 閉包的使用
將不會改變的變量定義在外部函數中,需要改變的變量值定義在內部函數中
9.4 閉包內修改外部變量
nonlocal 關鍵字來完成:聲明外部函數的變量