在我的Python的一个打包__init__.py
文件中包含的声明自。进口XXXX
from . import XXXX
什么了“”在这里呢?我通过查看另一个软件包获得了这种技术,但我不明白它的含义。
谢谢!
在我的Python的一个打包__init__.py
文件中包含的声明自。进口XXXX
from . import XXXX
什么了“”在这里呢?我通过查看另一个软件包获得了这种技术,但我不明白它的含义。
谢谢!
这是一个relative import。
其相对重要。 来源:http://docs.python.org/py3k/reference/simple_stmts.html#the-import-statement
当指定哪些模块导入你没有指定模块的 绝对名称。当在另一个包中包含模块或包时,可以在 的相同顶层包中进行相对导入,而不必提及包名。通过 在指定的模块或包中使用前导点后 可以指定在不指定确切名称的情况下向上遍历当前包层次结构 的程度。
一个引导点表示当前存在导入模块的 包。两个点意味着一个包级别的 。三个点上升两级,等等。因此,如果您从pkg包中的模块执行
from . import mod
,那么您将结束导入pkg.mod的 。如果您从pkg.subpkg1中的 执行..subpkg2 import mod
,则您将导入pkg.subpkg2.mod。对于相对进口的规格 包含在PEP 328内。
杜赫,当然是。感谢您将我指向该功能的正确名称。 – jlconlin
虽然这可能在理论上回答这个问题,[这将是更可取的](/ meta.stackoverflow.com/q/8259)在这里包括答案的基本部分,并提供参考链接。 – Barmar