Python 为函数内的全局变量赋值
为什么这样不行?我知道它不会改变全局变量的值,但是它不能在函数内部工作吗Python 为函数内的全局变量赋值,python,python-3.x,scope,Python,Python 3.x,Scope,为什么这样不行?我知道它不会改变全局变量的值,但是它不能在函数内部工作吗 S将新值签名到。。。这是旧值*2。为什么不可能呢?函数中的a位于函数范围内,如果要引用外部的,请使用global: a = 2 def alter_a(): a = a * 2 return a a = 2 def alter_a(): global a a = a * 2
S将新值签名到。。。这是旧值*2。为什么不可能呢?函数中的
a
位于函数范围内,如果要引用外部的,请使用global
:
a = 2
def alter_a():
a = a * 2
return a
a = 2
def alter_a():
global a
a = a * 2