具有嵌套函数作用域的UnboundLocalError

具有嵌套函数作用域的UnboundLocalError,第1张

具有嵌套函数作用域的UnboundLocalError

如果您使用的是Python 3,则可以使用以下

nonlocal
语句启用非本地名称的重新绑定

def outer():    ctr = 0    def inner():        nonlocal ctr        ctr += 1    inner()

如果您使用的Python 2没有

nonlocal
,则需要执行增量 *** 作而无需重新绑定裸名(通过将计数器保留为某些裸名的项目或属性, 而不是
裸名本身)。例如:

...ctr = [0]def inner():    ctr[0] += 1...

当然,

ctr[0]
无论您
ctr
现在在其他任何地方使用裸机,都可以使用它。



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

原文地址:https://54852.com/zaji/5617270.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存