因此,这是正在发生的事情的简化版本
x = []
def test():
return x
def init():
x.append('blah')
问题: init() 函数在单独的文件中运行并正确更新全局变量 x。但是在运行 test() 函数之后,我总是会得到 [] 而不是 ['blah'] 的值。但这就是奇怪的地方。如果我要运行这个函数(whatever_file.py 是这些函数存储位置的名称):
x = []
def test():
from whatever_file import x
return x
def init():
x.append('blah')
这工作正常。我会得到 ['blah'] 的回报。我尝试将 global x 放入 init 和 test 函数中也无济于事。我不知道发生了什么事
有什么帮助吗?