您正在从“ sub”包中导入。
start.py即使有
__init__.py礼物,它本身也不在包装中。
您需要从以下目录中的一个目录启动程序
parent.py:
./start.py./pkg/__init__.py./pkg/parent.py./pkg/sub/__init__.py./pkg/sub/relative.py
与
start.py:
import pkg.sub.relative
现在pkg是顶层软件包,您的相对导入应该可以了。
如果您想坚持使用当前的布局,则可以使用
importparent。因为您是
start.py用来启动解释器的,所以该目录
start.py位于python路径中。
parent.py作为一个单独的模块住在那儿。
__init__.py如果您不将任何内容导入到目录树中更远的脚本中,也可以安全地删除顶层。



