如何在Python中进行相对导入?

如何在Python中进行相对导入?

想象一下这个目录结构:

app/
   __init__.py
   sub1/
      __init__.py
      mod1.py
   sub2/
      __init__.py
      mod2.py

我正在编码mod1,我需要从中导入一些东西mod2。我该怎么办?

我尝试了from ..sub2 import mod2但是我得到了“尝试非包装中的相对导入”。

我google了一下,但发现只有“ sys.path操纵”黑客。有没有干净的方式?


编辑:我__init__.py的所有人目前都是空的

EDIT2:我想这样做,因为SUB2包含了为子包(共享类sub1subX等等)。

Edit3:我正在寻找的行为与PEP 366中描述的相同(感谢John B)


波斯汪
浏览 832回答 0
0回答
打开App,查看更多内容
随时随地看视频慕课网APP