Skip to main content
 首页 » 编程设计

python之从函数内改变全局变量

2025年05月04日12mfrbuaa

如果我用这样的东西开始一个脚本:

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

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

我希望是“somethingElse”,但相反,在编写了一个将 someVar 设置为其他内容的函数后,我发现 someVar 仍然是“none”。

这是预期的吗?如果您从函数中操作全局变量,全局变量是否会向前改变?

请您参考如下方法:

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

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