我有定义全局变量的文件,我想在文件之外使用,例如" func.py"含有:
def init():
global a
a = 5
如果我通过&x 34;从x import *"导入,那么访问模块的全局变量就不起作用了:
from func import *
init()
a
func.a
,因为a
和func
都未定义。 " FUNC"但是,它列在sys.modules.keys()中。
我知道"来自x import *"这不是最佳实践,但如何在使用时访问模块的变量或模块对象?
答案 0 :(得分:0)
我没有找到办法做到这一点,除了导入模块"正确"同样。
import func
from func import *
init()
func.a
This question密切相关。 This one表示由于模块是使用任一命令完全导入的,因此也没有真正的性能差异。 <{3}}也可以为大型项目使用带有全局变量的单独文件/容器。
显然,不要使用&#34;来自x import *&#34;如果您无法帮助,请在实时故障排除之外。