|
2
|
| Eric Schoonover thSoft · 技术社区 · 15 年前 |
|
|
1
4
python的嵌套作用域的工作方式,您永远不能
分配
到父范围中的变量,除非它是全局变量(通过
相反,您必须使用通过引用存储的数据类型来解决这一问题:
请注意,这就是列表变量工作的原因——它们是通过引用存储的,因此修改列表会修改原始引用列表。如果你想做点什么
有时使用的一个选项是,只保留要在
|
|
|
2
2
简而言之,python没有适当的词汇范围支持。如果这样做了,就必须有更多的语法来支持这种行为(即,声明变量作用域的var/def/my关键字)。 除了实际的词汇范围之外,最好的方法是将数据存储在环境数据结构中。一个简单的例子是列表,例如:
你可以这样做,也可以检查魔法。关于这方面的更多历史,请阅读 thread . |
|
|
3
2
如果您碰巧使用的是Python3,那么可以使用
|