我是這方面的初學者,我很難找到與我的問題相同的案例。我的代碼是這樣的:def zerofunc(value): global g value = 0g = 15zerofunc(g)print(g)我在函數(shù)內部將 g 設置為 global 以生成 0 作為最終結果,但它仍然打印出 15 而不是 0。誰能解釋為什么 global 語句在這種情況下不起作用,以及我應該如何避免相同的情況錯誤?
1 回答

小唯快跑啊
TA貢獻1863條經(jīng)驗 獲得超2個贊
您的函數(shù)將名為 的變量設置value為零,而 g 保持不變。如果你想改變,,g這段代碼會做到:
def zerofunc(value):
global g
g = 0
g = 15
zerofunc(g)
print(g)
話雖這么說,似乎沒有充分的理由使g全球化成為可能。通常不鼓勵使用全局變量。
添加回答
舉報
0/150
提交
取消