如何建立跨模块变量
正如 debug 变量的流行所强调的那样,有一个项目中跨多个模块可访问变量的实际需要。为了解决这个问题,让我们探索一种创建具有类似跨模块功能的自定义“foo”变量的解决方案。
与 __debug__ 不同,我们的“foo”变量不需要跨模块实时全局更新。相反,在导入其他模块之前设置它的值就足够了。
解决方案:全局模块级变量
要建立跨模块变量,我们可以定义它作为模块级别的全局变量。这可确保一个模块内对其进行的任何修改都会反映在其他脚本对该模块的导入中。
示例:
a.py:
<code class="python">var = 1</code>
b.py:
<code class="python">import a print(a.var) import c print(a.var)</code>
c.py:
<code class="python">import a a.var = 2</code>
运行 python b.py 时,输出将为:
1 2
这演示了如何修改当 c.py 中的 .var 共享相同的导入上下文时,它们也会影响 b.py 中的值。
真实世界应用
全局模块级变量查找在 Django 等框架中的实际使用,其中设置集中存储在 global_settings.py 模块中,并可通过 django.conf.settings 在整个项目中访问。
以上是如何在 Python 中实现跨模块变量:实用指南的详细内容。更多信息请关注PHP中文网其他相关文章!