Python函数不改变变量 我是C++程序员,我在学习pyPoG,所以我对Python非常陌生。我注意到函数的这种行为,不知道该怎么办:
假设我们有一个全局变量:Python函数不改变变量 我是C++程序员,我在学习pyPoG,所以我对Python非常陌生。我注意到函数的这种行为,不知道该怎么办:,python,pygame,Python,Pygame,假设我们有一个全局变量: x = 10 现在让我们假设有一个函数可以改变x的值: def foo(): x = 100 现在,在我的pygame主循环中,如果我调用foo(),变量x在函数调用之后仍然是10。这是怎么发生的呢?函数内部的局部范围x值发生了变化。在函数外部定义的x具有全局作用域。要更改全局值,请在更新值之前,在函数内尝试global var\u name语句 def foo(): global x x = 100 在函数内部,x的局部范围值已更改。在函数外部定
x = 10
现在让我们假设有一个函数可以改变x的值:
def foo():
x = 100
现在,在我的pygame主循环中,如果我调用foo(),变量x在函数调用之后仍然是10。这是怎么发生的呢?函数内部的局部范围x值发生了变化。在函数外部定义的x具有全局作用域。要更改全局值,请在更新值之前,在函数内尝试
global var\u name
语句
def foo():
global x
x = 100
在函数内部,x的局部范围值已更改。在函数外部定义的x具有全局作用域。要更改全局值,请在更新值之前,在函数内尝试
global var\u name
语句
def foo():
global x
x = 100
在函数内部,隐式创建另一个变量x,然后将其设置为100。要更改全局变量,请尝试以下操作:
def foo():
global x
x = 100
def foo():
全球x
x=100
在函数中,隐式创建另一个变量x,然后将其设置为100。要更改全局变量,请尝试以下操作:
def foo():
global x
x = 100
def foo():
全球x
x=100
在函数中需要global x
。另请参见:x=100
仅创建函数中所需global x
的局部变量。另请参见:x=100
仅创建foo
的局部变量否,不起作用。否,不起作用。