Python-如何制作跨模块变量?
该__debug__
变量很方便,部分原因是它会影响每个模块。如果我想创建另一个工作方式相同的变量,我该怎么做?
从某种意义上说,如果我在一个模块中更改foo,而在其他模块中对其进行更新,则该变量(让我们为原始变量,并将其称为“ foo”)不必是真正全局的。如果我可以在导入其他模块之前设置foo,然后它们会看到相同的值,那很好。
回答:
我不以任何方式,形状或形式认可该解决方案。但是,如果你将变量添加到__builtin__
模块,则__builtin__
默认情况下,就像所有其他模块(包括所有模块)中的全局变量一样,将可以对其进行访问。
a.py包含
print foo
b.py包含
import __builtin____builtin__.foo = 1
import a
结果是打印了“ 1”。
编辑:该__builtin__
模块可用作本地符号__builtins__
-这就是其中两个答案之间存在差异的原因。另请注意,__builtin__
它已builtins
在python3中重命名为。
以上是 Python-如何制作跨模块变量? 的全部内容, 来源链接: utcz.com/qa/424738.html