我想在函数内更改全局变量的形式。全局变量是整数。尝试这样做时出现错误。这是我要做的事情的简化版本:
variable = 3
def test():
b = 5
if b > 0:
variable -= 1
print(variable)
else:
print('fail')
test()
有人能帮助我找到一种在每次函数测试运行时将整数变量减1的方法吗?
答案 0 :(得分:0)
在引用您不作为参数传递的函数之外的变量时,必须先将其声明为全局变量,然后再引用它。将global variable
添加到函数的开头,它应该可以工作。
答案 1 :(得分:0)
variable = 3
def test():
b = 5
global variable
variable -= 1
if b > 0:
print(variable)
else:
print('fail')
test()
test()
test()
test()
test()
test()
输出:
2 1个 0 -1 -2 -3
请注意,条件不会满足于失败,因为我们不会对b永远等于5做任何事情。