导入模块时内存使用的区别
Difference between memory usage when importing modules
我想知道以这些方式导入模块时内存使用有什么区别:
import Mod1
from Mod1 import *
from Mod1 import a,b,c
主要介于前两者之间。
第一个使用最少的内存,因为它只在模块范围内创建一个名称。
第二个使用最多(假设 Mod1
包含的不仅仅是 a
、b
和 c
明确地或在 __all__
中)因为重新创建所有名称。
在所有这三种情况下,整个模块都会被导入和执行,因此如果您正在寻找大量内存节省,这不是您想要优化的。
我想知道以这些方式导入模块时内存使用有什么区别:
import Mod1
from Mod1 import *
from Mod1 import a,b,c
主要介于前两者之间。
第一个使用最少的内存,因为它只在模块范围内创建一个名称。
第二个使用最多(假设 Mod1
包含的不仅仅是 a
、b
和 c
明确地或在 __all__
中)因为重新创建所有名称。
在所有这三种情况下,整个模块都会被导入和执行,因此如果您正在寻找大量内存节省,这不是您想要优化的。