我正在创建一个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)
因此,我正在创建一个应该可以全局访问的场景(_S(。然而,这在helpers.py中不起作用;
from .main import *
print(_scene)
当我运行时,我得到错误:名称错误:名称"_scene"未定义
我认为init.py是不错的
from .main import *
from .helpers import *
我错过了什么?希望您的意见!
如果您想使用文件中的全局变量并在其他文件中使用它们,反之亦然,这是个坏主意。它造成了周期性依赖。如果需要在两个文件中都使用全局变量,可以定义第三个文件MyGlobals.py
并在其中声明全局变量。然后将该文件导入helpers.py
和main.py
,并通过MyGlobals._scene
进行访问