这是一个创建于 2096 天前的主题,其中的信息可能已经有所发展或是发生改变。
例如:
第一次在导入 import re 这个模块时候,是直接将 re 模块内容都编译了一遍吗?
那么,如果模块中有全局变量的赋值运算,也是这时候执行吗?
所以就有了以下的疑问,假如程序以下列方式重载 a 文件,是重新编译一次及 a 文件的所有模块?
module_name = importlib.import_module('.', 'a')
module_name = importlib.reload(module_name)
result = module_name.main(params)
1 条回复 • 2019-03-29 09:42:03 +08:00
|
|
1
spotfg 2019-03-29 09:42:03 +08:00
在其他论坛,有大佬这样说: ''' import 语句所做的: 执行模块代码,接着生成一个 module 对象,里面包含了模块的变量、函数、类 '''
但是,importlib.reload(module_name)后 module 对象是被回收了,还是继续存在内存中
|