I'd like to know whats is the difference between the memory usage when importing modules in these ways:
import Mod1
from Mod1 import *
from Mod1 import a,b,c
Mainly between the first two.
I'd like to know whats is the difference between the memory usage when importing modules in these ways:
import Mod1
from Mod1 import *
from Mod1 import a,b,c
Mainly between the first two.
The first uses the least memory since it only creates a single name in the module scope.
The second uses the most (assuming
Mod1
contains more than justa
,b
, andc
either explicitly or in__all__
) since all names are recreated.In all three cases the entire module is imported and executed, so if you're looking for large memory savings this is not what you want to optimize.