Python - 函数访问全局变量

时间:2014-04-03 07:41:04

标签: python function global-variables reusability

好的,所以我对编程有些新意,我正在开发一个基于文本的游戏,以便在Python中获得更多练习。总而言之,我把游戏中的“设置”部分变成了一个函数,这样我就可以最小化这个函数(我使用的是记事本++)并摆脱混乱,所以如果我想要的话我可以调用它改变一些设置变量。但是当我把它全部放入一个函数时,我意识到它(函数)不能改变全局变量,除非你做所有这些额外的东西让python知道你正在处理全局变量,而不是一些单独的函数变量。问题是,函数是我知道重用代码的唯一方法,这就是我真正需要的,我不需要使用任何参数或任何特殊的参数。那么有什么类似的函数可以让我重用代码,并且不会让我几乎是我的代码长度的两倍,让它知道它的全局变量?

很抱歉可能会让这个太长或令人困惑,我重写了它,并且它第二次没有变得更清晰:P。感谢任何能给我帮助的人!

2 个答案:

答案 0 :(得分:8)

您可以使用相同的global语句列出多个变量。

一个例子:

x = 34
y = 32

def f():
    global x,y
    x = 1
    y = 2

这样,您的函数中使用的全局变量列表可以包含在几行中。

然而,正如@BrenBarn在上面的评论中所述,如果你的函数只是初始化变量,那么就不需要使用函数了。

答案 1 :(得分:2)

看看this

在函数中使用全局变量就像将global添加到要使用的变量一样简单。