Python 导入模块时内存使用的差异

Python 导入模块时内存使用的差异,python,memory,import-module,Python,Memory,Import Module,我想知道以以下方式导入模块时内存使用情况的区别: import Mod1 from Mod1 import * from Mod1 import a,b,c 主要在前两个之间。第一个使用最少的内存,因为它只在模块作用域中创建一个名称 第二个使用最多(假设Mod1包含的不仅仅是a、b和c,无论是显式的还是在\uuuuuuuuuuuuuuuuuuuuuuuuuu中),因为所有名称都是重新创建的 在这三种情况下,都会导入并执行整个模块,因此,如果您想节省大量内存,这不是您想要优化的。您可以在这里找到

我想知道以以下方式导入模块时内存使用情况的区别:

import Mod1
from Mod1 import *
from Mod1 import a,b,c

主要在前两个之间。

第一个使用最少的内存,因为它只在模块作用域中创建一个名称

第二个使用最多(假设
Mod1
包含的不仅仅是
a
b
c
,无论是显式的还是在
\uuuuuuuuuuuuuuuuuuuuuuuuuu
中),因为所有名称都是重新创建的


在这三种情况下,都会导入并执行整个模块,因此,如果您想节省大量内存,这不是您想要优化的。

您可以在这里找到答案:我不太理解。。。所以前两个例子,它们之间没有区别吗?@HugoSousa这里的op要求比较不同导入方法的内存使用情况,链接回答了导入的内存使用情况。是的,有区别:在第一个/第二个例子中,您导入模块内的所有内容;在第三个函数中,您仅导入
a
b
c
函数。第一个和第二个的区别在于第一个,它不是一个模块,而是一个包。使用第一次导入时,必须执行Mod1.function(),在第二次导入时,可以直接调用该函数。