16. 如何在函数中使用全局变量

题目

我可以在函数中创建或者使用一个全局变量吗?

如果我在一个函数中创建了一个全局变量,我能在另一个函数中使用吗?当我需要访问时,需要在函数中将这个全局变量存储为一个本地变量吗?

链接

回答一

你可以在其他函数中使用全局变量。如果需要修改,那么需要在函数中声明它是全局变量。

globvar = 0

def set_globvar_to_one():
    global globvar    # 需要修改 globvar
    globvar = 1

def print_globvar():
    print(globvar)     # 不需要修改 globvar

set_globvar_to_one()
print_globvar()       # Prints 1

我猜测这样做的原因是:因为全局变量很危险,Python想通过显式地使用global关键字确认你知道你在做什么。

如果你想跨模块分享全局变量的话,可以参考其他答案

geekcircle            updated 2018-06-17 23:26:50

results matching ""

    No results matching ""