みーのぺーじ

みーが趣味でやっているPCやソフトウェアについて.Python, Javascript, Processing, Unityなど.

(mypy)Relative import climbs too many namespaces

mypyが”Relative import climbs too many namespaces"とエラーして,気づくのに時間がかかったのでメモしておきます.

プロジェクトは以下のような構成です.

src
└──b.py
a.py

b.pyの中身は以下の通りです.

from ..a import foo
foo()

原因は単純で,src/__init__.pyが存在したいため,srcがモジュールとはらなず,相対インポートでエラーするために発生します.

したがって,__init__.pyを追加すると解決します.

src
├── __init__.py
└──b.py
a.py