要在Python中实现跨模块的全局变量,可以使用以下方法:
# module1.py
global_var = 10
# module2.py
from module1 import global_var
print(global_var) # 输出 10
globals()
函数将变量声明为全局变量。# module1.py
def set_global_var():
globals()['global_var'] = 10
# module2.py
from module1 import set_global_var
set_global_var()
print(global_var) # 输出 10
configparser
模块读取一个配置文件,并将配置文件中的变量设置为全局变量。# config.ini
[DEFAULT]
global_var = 10
# module1.py
import configparser
config = configparser.ConfigParser()
config.read('config.ini')
global_var = config.getint('DEFAULT', 'global_var')
# module2.py
from module1 import global_var
print(global_var) # 输出 10
注意,使用全局变量需要小心,因为它们可能会导致代码的复杂性和可维护性降低。最好的做法是尽量避免使用全局变量,而是使用函数参数和返回值来传递数据。