为什么全局变量无法应用到函数中的for循环中????
最近碰到个问题,
我定义一个全局变量total,
如果只是简单在函数中打印,是没问题
total = 10
def remove():
print(total)
但是我在函数中使用了for循环,
它就无法传递,
提示:local variable 'total' referenced before assignment
total = 10
def remove():
print(total)
for i in range(5):
total -= 1
因为这个变量的数值开始运行时是固定的,
后面是会变化的,
所以我不能用函数形参进行传递remove(total)
说白了,我就想这个函数只获取一次这个变量的值,
后续由这个函数进行处理这个变量值。
请教下高手们,感谢!!!! 你可以使用 global 关键字来在函数中引用全局变量。
在你的例子中,你可以将 total 声明为全局变量并在函数中使用 global 关键字,如下所示:
total = 10
def remove():
global total
print(total)
for i in range(5):
total -= 1
print(total)
这样,你就可以在函数中访问并修改全局变量 total 的值了。
请注意,在函数中使用全局变量会增加代码的复杂度,因此请根据实际需求谨慎使用。 total -= 1
了解一下
页:
[1]