未在for循环中定义的python全局变量

未在for循环中定义的python全局变量,第1张

未在for循环中定义的python全局变量

您可以从内部 访问 全局变量

foo
,但是除非使用了
global
关键字,否则无法重新绑定它们

因此,您可以使用

LINES.append(...)
LINES[:] = []
因为它们仅在修改LINES引用的列表。

当您尝试分配给

LINES
using时
LINES =[]
,Python知道它需要在函数局部变量中为LINES创建一个条目。由于您尝试
len(LINES)
在将任何内容分配给局部变量之前使用,因此会导致错误

您可以检查

foo
这样的

>>> foo.func_pre.co_nlocals2>>> foo.func_pre.co_varnames('prob', 'LINES')

如果

foo
再次定义不带
LINES = []
,则会看到Python不再将其标记为局部变量。



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

原文地址: https://outofmemory.cn/zaji/5664110.html

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

发表评论

登录后才能评论

评论列表(0条)

保存