2017-10-14 88 views
-1

好的,我完全改变了这篇文章 - 我意识到我做错了。在def中操作变量

全球不工作在def-我可以打印一个变量,但是当我尝试更改相同变量时(例如:Test = Test + 1),它不起作用。 我已被重定向到'全局'修复程序,它不起作用。

看看这张截图来了解我的无奈 https://i.imgur.com/B8G4cDU.png

因此,这里是我需要解决;我如何做到这一点,所以我可以操纵'健康'变量?

回答

1

为了使用全局变量,你必须要注意,它的范围内全球,你正在使用它:

Hello = 4 
Hello2 = 2 

def SomeLogicThing(): 
    global Hello 
    global Hello2 
    if Hello2 == 2: 
     Hello = Hello + 1 

(另请注意,Hello + 1不会对自己做任何事,它只是一个表达式,必须包含一个赋值才能更改值,或者使用+=运算符。)

+0

重新绑定,不能使用。 –

+0

我还是得到这个:在全局声明之前使用名字'Hello' – Gregory