我需要从其他模块访问主模块中导入的模块范围的变量。如何访问主模块调用的模块范围的变量?
在我的应用程序中,我在同一个目录中有一些模块。其中一个模块是使用configparser读取config_file.ini的模块,以加载使用其他模块的配置变量。
我不想导入多于一次的管理config_file.ini的模块,以避免两次打开同一文件的问题。
我没有在管理config_file.ini(只有一个函数来更新文件)但不加载变量的模块中使用函数或分类。
图形概念:
Module_A:
# !usr/bin/python3
# -*- coding: UTF-8 -*-
import module_B
import module_C
print(module_B.my_var)
print(module_C.my_var)
Module_B:
# !usr/bin/python3
# -*- coding: UTF-8 -*-
my_var = "This is the Module B"
Module_C:
# !usr/bin/python3
# -*- coding: UTF-8 -*-
my_var = "This is the Module C"
print(module_B.my_var)
我使用Python3.x
我应该将它们封装在单独的类中吗?我不是在OOP经历:-(
但是,如何在它上面的例子中抛出异常的Module_C:?NameError:名字' 'module_B'未定义' – Trimax
@Trimax:但那只是因为'Module_C'如果它需要访问'Module_B'就应该导入'Module_B'。这与加载'config.ini'文件无关。 –