因此我无法理解全局变量的基础知识,因为我是python中的初学者。我想尝试更改一个全局变量但不幸的是它没有用。你们任何人都可以解释并帮助我解决我的问题。谢谢!!
global x
x = 10
def NEWX():
print (x)
x = x + 5
print (x)
print (x)
NEWX()
print(x)
#this displays 10 10 15 10
试试这个重构:
x = 10
def new_x():
global x
print(x)
x = x + 5
print (x)
print(x)
new_x()
print(x)
# prints 10 10 15 15
我无法运行您的原始代码,它抱怨x
在函数中未定义。在函数范围内,x
未知。它在更高的范围内已知,但在您的功能中却不知道。这就是为什么global x
语句需要在函数中 - 让python知道使用来自外部范围的x
。
x = 10
def NEWX():
global x
print (x)
x = x + 5
print (x)
print (x)
NEWX()
print(x)
全局变量规则: