【发布时间】:2012-02-25 01:23:37
【问题描述】:
from foo import spam 与from foo import * 相比,除了不导入所有函数之外,还有哪些优势?
它会节省内存吗?或者它只是语法糖,但实际上导入了所有内容? 我在哪里可以找到更多关于它的信息?
如果它确实可以节省内存,那它是如何工作的?
【问题讨论】:
-
from foo import *将导入 foo 中的所有内容 - 全局变量、方法、类,包括 foo 包含的内容,而from foo import spam将仅导入spam。想象一个具有数百个变量和方法的模块 - 您只想导入spam以停止名称冲突,并帮助提高性能和内存使用 -
为了回答一个特定的问题(它不是一个精确重复的):关于记忆,它没有任何区别。导入过程完全一样,只是后面的绑定过程不同。
标签: python