想象一下这个目录结构:
app/
__init__.py
sub1/
__init__.py
mod1.py
sub2/
__init__.py
mod2.py
我正在编码mod1
,我需要从mod2
. 我该怎么做?
我试过from ..sub2 import mod2
了,但我得到了一个“尝试在非包中进行相对导入”。
我四处搜索,但只发现“sys.path
操纵”黑客。没有干净的方法吗?
编辑:我所有__init__.py
的目前都是空的
Edit2:我正在尝试这样做,因为 sub2 包含跨子包(,等)共享的sub1
类subX
。
Edit3:我正在寻找的行为与PEP 366中描述的行为相同(感谢 John B)