我对我正在创建的 Python 包感到非常有趣。但是我有一个问题;
一个应该是全局的变量是看不到的!这是文件
__init__.py
main.py
helpers.py
在 main.py 中我有以下内容
from .helpers import *
class scene:
def __init__(self,variables):
self.variables = variables
global _scene
_scene = scene(100)
所以我正在制作一个应该可以全局访问的_场景。然而,这在 helpers.py 中不起作用;
from .main import *
print(_scene)
当我运行时,出现错误:
NameError: name '_scene' is not defined
我觉得
__init__.py
还可以
from .main import *
from .helpers import *
我错过了什么?希望您的意见!
如果您想使用文件中的全局变量并在其他文件中使用它们,反之亦然,这是一个坏主意。它产生了循环依赖。如果您需要在两个文件中使用全局变量,您可以定义第三个文件
MyGlobals.py
并在那里声明全局变量。然后将该文件导入到 helpers.py
和 main.py
并通过 MyGlobals._scene
访问