可能重复:
Should I use "from package import utils, settings" or "from . import utils, settings"
从python标准库导入时,如何选择以下选项?:
import foo
from foo import bar
有什么考虑因素?这是足迹吗?或者只是一个潜在的名字冲突事件?
如果一个模块的字符串处理最少,那么这会走得太远吗?:
from string import split
如果一个程序有多个模块,那么一个模块导入的结果是否可以被程序中的后续模块使用?
如果仅在冷代码中需要导入的模块,那么将导入隐藏在包含冷代码的逻辑块中是否被认为是好的形式?
答案 0 :(得分:0)
如果您使用pyflakes,如果您不使用已导入的东西,它会抱怨。
我发现,如果我只需要一个或两个函数/类,那么我将直接导入它们:如果我需要很多,我可能只使用命名空间版本(foo.bar
)。
需要付出代价。查找,所以如果你在嵌套循环中有很多它们,最好直接导入函数,或者你可以将函数重新绑定到本地名称。
import foo
def bar(baz):
for qux in baz:
for i in range(100000):
foo.bar(qux, i)
减少查找时间:
import foo
def bar:
foo_bar = foo.bar
for qux in baz:
for i in range(100000):
foo_bar(qux, i)