python装饰器中变量的范围-更改参数

python装饰器中变量的范围-更改参数,第1张

python装饰器中变量的范围-更改参数

由于您将

p
内部分配给
wrapper
Python,因此Python将
p
内部
wrapper
视为
wrapper
。在Python
3中,您可以使用
nonlocal p
标记
p
为从外部作用域引用。在Python 2中,虽然可以通过将相同的值作为关键字参数(例如
defdecorator(fn, p=p)
)传递到嵌套函数中来获得对相同值的引用,但无法分配给中间p 。

但是,目前还不清楚您在做什么。

p
已经只在本地
pdecor
。外部没有代码
pdecor
可以访问
p
,因此递减不会对其他任何代码产生任何影响。因此,无论您是否可以递减
p
,它都不会真正完成任何事情。



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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存