从函数内变换全局变量

时间:2013-12-18 19:57:17

标签: python global-variables

如果我用以下内容开始编写脚本:

someVar = "none"

def someFunction():
    if whatever is whatever:
        someVar = "somethingElse"
    return someVar

然后,在另一个函数中我检查someVar,someVar会是“none”还是“somethingElse”?

我希望“somethingElse”,但是,编写了一个将someVar设置为其他东西的函数,我发现someVar仍然是“none”。

这是预期的吗?如果从函数中操作全局变量,全局变量会向前发生变化吗?

1 个答案:

答案 0 :(得分:8)

您可以使用global关键字,这意味着您将修改全局变量someVar

someVar = "none"

def someFunction():
    global someVar
    if whatever is whatever:
        someVar = "somethingElse"
    return someVar