在函式的內部如果想使用函式外的變數,並且希望改變該變數的值,可以考慮使用global關鍵字,從而告訴直譯器該變數在函式體外部定義,當前函式可以對其進行改變。下面請看加global語句和不加global語句使用變數的差別。
#!/usr/bin/python
deffunc
(x):
print
'x is', x
x = 2
print
'changed local x to', x
x = 50
func(x)
print
'x is still', x
輸出為:
50changed local x to
2x is still 50
#!/usr/bin/python
deffunc
():global x
print
'x is', x
x = 2
print
'changed local x to', x
x = 50
func()
print
'value of x is', x
輸出為:
50changed local x to
2value of x is
2
Python Global全域性變數關鍵字
文章翻譯自 在python中,global關鍵字允許你在當前作用域之外修改變數。它用於建立全域性變數,並在區域性上下文中對該變數進行更改。python中global關鍵字的使用規則如下 1 當我們在函式中建立變數時,預設情況下它是區域性的。2 當在函式外部定義變數時,預設情況下它是全域性變數。你不必...
Python Global和Nonlocal的用法
nonlocal和global也很容易混淆。簡單記錄下自己的理解。總之一句話,作用域是全域性的,就是會修改這個變數對應位址的值。global語句是乙個宣告,它適用於整個當前 塊。這意味著列出的識別符號將被解釋為全域性變數。儘管自由變數可能指的是全域性變數而不被宣告為全域性變數。global語句中列出...
python global和nonlocal的使用
變數定義在函式外部的時候,如果函式裡面想改變這個全域性變數的值,需要在當前的引用函式裡面重新定義乙個變數 並用關鍵字global修飾。例如 a 1 def b a 1 print a b 用ide寫完這段 的時候,還沒執行就會報紅線提示錯誤,執行之後產生錯誤,錯誤內容為 unboundlocaler...