問題

如何在函式中建立或使用全域性變數?

如果我在一個函式中建立一個全域性變數,如何在另一個函式中使用該全域性變數?我是否需要將全域性變數儲存在需要它訪問的函式的本地變數中?

  最佳答案

您可以在其他函式中使用全域性變數,在分配給它的每個函式中將其宣告為global:

 globvar = 0

def set_globvar_to_one():
    global globvar    # Needed to modify global copy of globvar
    globvar = 1

def print_globvar():
    print(globvar)     # No need for global declaration to read value of globvar

set_globvar_to_one()
print_globvar()       # Prints 1
 

我想象的原因是,由於全域性變數非常危險,Python想確保你真的知道這是你正在玩的,明確要求global關鍵字.

如果您想跨模組共享一個全域性變數,請參閱其他答案。

  相同標籤的其他問題

pythonglobal-variablesscope