我想用python函數編寫一個程序。在一個函數中使用的變量將在其他各種函數中使用。在python中引用全局變量
我已經在第一個函數中聲明它爲全局函數,然後在第二個函數中使用了返回的值。然而,在第三個函數中,我想使用第二個函數中的更新值,但我只能從第一個函數中獲取值。
def func():
global val, val2
val = 3
val2 = 4
return val, val2
def func1(val, val2):
val = val + 1
val2 = val2 + 1
return val, val2
def func2(val,val2):
val = val + 1
val2 = val2 + 1
print val, val2
func()
func1(val, val2)
func2(val, val2)
我想獲得5,6
的答案,但我得到4,5
。
你正在混合全局和本地人。當你將一個變量傳遞給一個變量是一個局部變量的函數時。除去函數參數並將全局val,val2添加到所有函數的開頭。 – user2682863