一尘不染

在函数中使用全局变量

python

如何在函数中创建或使用全局变量?

如果我在一个函数中创建一个全局变量,如何在另一个函数中使用该全局变量?我是否需要将全局变量存储在需要访问的函数的局部变量中?


阅读 374

收藏
2022-01-13

共1个答案

一尘不染

您可以在其他函数中使用全局变量,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关键字来确保您了解风险。

如果您想跨模块共享全局变量,请参阅其他答案。

2022-01-13