解释 Python 中导入模块中的全局变量的可见性?


Python 中的全局变量是模块全局变量,而不是跨模块的。(与 C 不同,除非您明确将其设为静态,否则 C 中的全局变量在所有实现文件中都相同。)如果您需要从导入模块中获取真正的全局变量,可以在导入它的模块的属性中设置这些变量。

import module1
module1.a=3

另一方面,如果 a 被很多模块共享,请将它放在别处,让每个人都导入它

global_module.py
module1.py:
import global_module
def fun():
    print global_module.var
Other files:
import global_module
import module1
global_module.var = 3
module1.fun()

更新日期:2019 年 10 月 1 日

944 次浏览

开启您的职业生涯

完成课程以获取认证

开始
广告
© . All rights reserved.