如何解决在函数内部定义的 global 关键字不会更新我的变量,但为什么呢?
为什么 func3 的输出仍然是 'Hello' 而不是 'New Message'?由于 func2 被告知将全局变量“update”的值更改为传递给 func1 的参数?我很困惑。
update = 'Hello'
def func1(message):
func2(message)
def func2(message):
global update
update = message
func3()
def func3(update = update):
print(update)
func1('New Message')
解决方法
当您不带参数调用 func3 时,它会使用默认值计算 func3。默认值为“你好”。 因此,您需要使用更新的新值调用 func3,如下所示:
time
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。