我是python和flask框架的新手。
对于以下代码:
from flask import Blueprint
main = Blueprint('main', __name__)
from . import views, errors
Run Code Online (Sandbox Code Playgroud)
我发现python有很多导入方式,例如:
import foo
import foo.bar
from foo import bar
from foo import bar, baz
from foo import *
from foo import bar as fizz
Run Code Online (Sandbox Code Playgroud)
但是如何理解from . import ...?
使用时import XXX,可以将XXX的所有内容导入命名空间XXX下,并且可以使用XXX.abc,XXX.example等访问它们。
使用时from XXX import abc,仅覆盖globals()字典的变量abc 。特殊from XXX import *功能执行相同的操作,但对于名称不是以下划线开头的所有变量。
最后,“ as”关键字允许您为导入的模块/函数/变量指定所需的名称。
当您的模块包含一些文件夹并且要从另一个文件导入时,。指向包含当前文件的目录,..指向包含当前文件的目录,依此类推。
对于一个不太简洁/准确的答案:`from ... import` vs`import。