在Python中,__debug__变量是跨所有模块的便捷工具。为了复制其优点,可以创建名为 foo 的自定义变量来实现类似的功能。然而,与 __debug__ 不同, foo 不需要是真正的全局变量,甚至可以在导入链接模块之前设置它的值。
要实现这一点,一个简单的全局模块级变量就可以了。下面是一个示例:
# a.py var = 1
# b.py import a print(a.var) import c print(a.var)
# c.py import a a.var = 2
当作为 python b.py 执行时,输出为 1 2,演示了 var 跨模块的通用可见性。
这种方法在 Django 的 global_settings.py 等场景中证明是有用的,其中通过导入的对象 django.conf.settings 访问设置。
以上是以下是一些适合本文的基于问题的标题: * 如何在Python中实现跨模块变量而不使用全局作用域? * 用自定义 C 替换 Python 的'__debug__”的详细内容。更多信息请关注PHP中文网其他相关文章!