考虑包含文件mypackage
,__init__.py
和module_a.py
的目录module_b.py
。
如果module_a
想要访问module_b
,则必须import mypackage.module_b
或import module_b from mypackage
。简单import module_b
失败。
首先:为什么?
其次:这是一个问题吗?
第三:如果是,那么解决这个问题的最佳方式是什么?
答案 0 :(得分:3)
Python 3使用绝对导入;任何不合格的名称都被视为顶级模块或包。
如果要从包中导入,请使用.
相对包前缀; .
是当前包,..
父级等。
因此,从您的mypackage
包中,您可以访问其他模块:
from . import module_b
请参阅Intra-package References section of the Python tutorial和import
statement reference。