如何理解。在python中导入?

时间:2015-10-30 07:42:17

标签: python flask

我是python和flask框架的新手。

代码如下:

from flask import Blueprint
main = Blueprint('main', __name__)
from . import views, errors

我发现python有很多导入方式,例如:

import foo
import foo.bar
from foo import bar
from foo import bar, baz
from foo import *
from foo import bar as fizz

但如何理解from . import ...

2 个答案:

答案 0 :(得分:4)

当您使用$("#prev11").click( function() { swControls.append('<a href="" class="swShowPage">'+(i-1)+'</a>'); } ); $("#next11").click( function() { swControls.append('<a href="" class="swShowPage">'+(i+1)+'</a>'); } ); 时,您会导入名称空间XXX下的XXX的所有内容,并且您可以使用XXX.abc,XXX.example等访问它们。

当您使用import XXX时,您只会覆盖from XXX import abc词典的变量abc。特殊globals()执行相同操作,但对于名称不以下划线开头的所有变量。

最后,&#34; as&#34; keyword允许您为导入的模块/函数/变量提供所需的名称。

如果您的模块包含某些文件夹,并且您想要从其他文件导入,。指包含当前文件的目录,..包含它的目录,等等。

更简洁/更准确的答案:`from ... import` vs `import .`

答案 1 :(得分:2)

from . import foo, bar

这意味着从当前目录导入foo,bar。

from foo import *

表示从模块foo导入所有项目。但我认为这不是一个好的做法。如果你可以而且只需要一个模块中的少量项目就像普通的导入而不是这个。有关详情,请查看here.