2013年5月5日 星期日

Python的名稱解析機制: LEGB原則


@ 變數的範圍(以及能在何處中使用)是由該變數在程式中何處指定來決定的,

  而變數的搜索範圍也稱為"詞彙範圍(Lexical Scoping)"。

@ 然而在函式內任何型態的指定敘述(assignment)都會將變數名稱歸類成"區域變數"。
  ex: =敘述、import、def、引數傳遞 等。


@ Python對於其所引用之變數名稱最多只搜尋四個範圍:

L: Local, 區域範圍
E: Enclosing, 任何其所在的def和lambda區域(由內到外)
G: Global,全域範圍
B: Built, 內建範圍

沒有留言:

張貼留言