全局语句不起作用,我不明白为什么

我是这方面的初学者,我很难找到与我的问题相同的案例。我的代码是这样的:


def zerofunc(value):

      global g

      value = 0

g = 15

zerofunc(g)

print(g)

我在函数内部将 g 设置为 global 以生成 0 作为最终结果,但它仍然打印出 15 而不是 0。谁能解释为什么 global 语句在这种情况下不起作用,以及我应该如何避免相同的情况错误?


回首忆惘然
浏览 86回答 1
1回答

小唯快跑啊

您的函数将名为 的变量设置value为零,而 g 保持不变。如果你想改变,,g这段代码会做到:def zerofunc(value):      global g      g = 0g = 15zerofunc(g)print(g)话虽这么说,似乎没有充分的理由使g全球化成为可能。通常不鼓励使用全局变量。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python