Python非本地语句

Python非本地语句,第1张

Python非本地语句

比较一下,不使用

nonlocal

x = 0def outer():    x = 1    def inner():        x = 2        print("inner:", x)    inner()    print("outer:", x)outer()print("global:", x)# inner: 2# outer: 1# global: 0

对此,使用

nonlocal
,其中
inner()
x
是现在还
outer()
x

x = 0def outer():    x = 1    def inner():        nonlocal x        x = 2        print("inner:", x)    inner()    print("outer:", x)outer()print("global:", x)# inner: 2# outer: 2# global: 0

如果要使用global,它将绑定x到正确的“全局”值:

x = 0def outer():    x = 1    def inner():        global x        x = 2        print("inner:", x)    inner()    print("outer:", x)outer()print("global:", x)# inner: 2# outer: 1# global: 2


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5145709.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-17
下一篇 2022-11-17

发表评论

登录后才能评论

评论列表(0条)

保存