作用域小課堂:Python變量的局部與全局作用域
Python中的作用域決定變量的訪問範圍,主要分爲局部和全局兩種。 **局部作用域**:函數內部定義的變量,僅在該函數內有效(如`age = 18`)。若函數內定義與全局變量同名變量,會優先當作局部變量處理(如`x = 200`覆蓋全局`x=100`,但外部仍爲100)。 **全局作用域**:函數外定義的變量,整個程序可訪問(如`name = "小明"`)。直接訪問無問題,但函數內若要修改全局變量,需用`global`聲明(如`global score`),否則Python會誤將其視爲局部變量(如`score=90`不修改原全局80)。 **嵌套函數**:內層函數可訪問外層函數局部變量,修改時需用`nonlocal`聲明(如`nonlocal outer_var`)。 總結規則:局部僅函數內,全局全程序;修改全局用`global`,修改外層局部用`nonlocal`。合理使用作用域可避免變量衝突,提升代碼可讀性。
閱讀全文