命名空間和作用域——python
提問人:楊紫紅發(fā)布時間:2020-11-25
變量是擁有匹配對象的名字(標識符)。命名空間是一個包含了變量名稱們(鍵)和它們各自相應的對象們(值)的字典。一個Python表達式可以訪問局部命名空間和全局命名空間里的變量。同名隱藏的原則同C/C++ 每個函數都有自己的命名空間。類的方法的作用域規(guī)則和通常函數的一樣。默認任何在函數內賦值的變量都是局部的。因此,如果要給全局變量在一個函數里賦值,必須使用global語句。 global VarName的表達式會告訴Python,VarName是一個全局變量,這樣Python就不會在局部命名空間里尋找這個變量了。 例如,我們在全局命名空間里定義一個變量money。我們再在函數內給變量money賦值,然后Python會假定money是一個局部變量。然而,我們并沒有在訪問前聲明一個局部變量money,結果就是會出現一個UnboundLocalError的錯誤。取消global語句的注釋就能解決這個問題。
繼續(xù)查找其他問題的答案?
相關視頻回答
點擊加載更多評論>>