为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

回首忆惘然 2023-06-13 16:54:07
我是这方面的初学者,我很难找到与我的问题相同的案例。我的代码是这样的:def zerofunc(value):      global g      value = 0g = 15zerofunc(g)print(g)我在函数内部将 g 设置为 global 以生成 0 作为最终结果,但它仍然打印出 15 而不是 0。谁能解释为什么 global 语句在这种情况下不起作用,以及我应该如何避免相同的情况错误?
查看完整描述

1 回答

?
小唯快跑啊

TA贡献1863条经验 获得超2个赞

您的函数将名为 的变量设置value为零,而 g 保持不变。如果你想改变,,g这段代码会做到:


def zerofunc(value):

      global g

      g = 0

g = 15

zerofunc(g)

print(g)

话虽这么说,似乎没有充分的理由使g全球化成为可能。通常不鼓励使用全局变量。


查看完整回答
反对 回复 2023-06-13
  • 1 回答
  • 0 关注
  • 85 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信