为什么我不能在python中更改函数中的全局变量

时间:2017-12-14 01:55:41

标签: python python-3.x function variables global-variables

我有一个全局变量,我们只需要调用它:

foo = ""

我有很多函数,我在其中一个函数中调用了foo。我将其更改为具有字符串值。但如果我之后进入另一个函数并调用它,它仍然没有该字符串值。

以下是一个例子:

foo = ""

funct():
   global foo
   foo = "some words"

funct2():
   global foo
   if foo == "some words":
       print ("foo is" + foo) 

funct()
funct2()

但就我而言,在:

funct2()

它认为即使在

中,foo也是空的
funct()

我将其更改为有值,嵌套函数是否可能对此产生影响,因为我的代码非常大而且我无法准确地描述其中的函数混乱。所以我给了你这个例子,这里很简单。嵌套函数不适用于更改全局变量或是否存在其他问题。是否有更简单的方法来获取可在任何函数中读取和编辑的变量?感谢任何能指出我正确方向的人。

0 个答案:

没有答案