python全域性變數 區域性變數 巢狀函式

2021-08-19 18:40:11 字數 690 閱讀 1518

全域性變數在呼叫的function中是不允許被直接修改的。

修改方法:在全域性變數前加global 關鍵字

如:修改text這個全域性變數,方法:global text="***"

對於在呼叫函式中修改區域性變數的,但輸出區域性變數還是原值的原因:

是函式在棧中建立了乙個與全域性變數同名的區域性變數,值作用於當前修改它的函式

內部巢狀函式:函式裡面套函式

內部函式的作用域只在母函式中有效,在母函式內、子函式外定義的變數,對於子函式來說相當於全域性變數,所以無法直接修改子函式的「全域性變數」,修改方法如下:

1)、使用容器型別的資料,對容器型別的資料進行修改

def fun11():

x=[6]

def fun22():

x[0] *= x[0]

return x[0]

return fun22()

2)、加上nonlocal關鍵字

def fun111():

x=7def fun222():

nonlocal x

x *= x

return x

return fun222()

python全域性變數 區域性變數

定義在函式內的變數有區域性作用域,在乙個模組中最高端別的變數有全域性作用域。全域性變數的乙個特徵是除非被刪除掉,否則它們的存活到指令碼執行結束,且對於所有的函式,它們的值都是可以訪問的。global str global string def foo local str local string r...

Python 區域性變數,全域性變數

什麼是區域性變數?作用是什麼?定義在函式內部的變數,叫做區域性變數。在不同函式內部可以有相同名字的區域性變數,但是他們之間互不干擾。作用 在函式內臨時儲存資料,讓資料方便使用。什麼是全域性變數?作用是什麼?定義在函式外部的變數,叫做全域性變數。作用 全域性範圍內都可以使用的變數 總結1 在函式外邊定...

python全域性變數 區域性變數

全域性變數名大寫 區域性變數名小寫 全域性變數 name alex def printme print name printme alex 在函式內部修改全域性變數 用global對全域性變進行修改。name alex def printme global name name lupe print ...