要在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
注意,使用全局变量需要小心,因为它们可能会导致代码的复杂性和可维护性降低。最好的做法是尽量避免使用全局变量,而是使用函数参数和返回值来传递数据。