我有这样的布局:
src
__init__.py
main.py
examples
__init__.py
example_project.py
library
__init__.py
some_library_code.py
example_project.py
使用some_library_code.py
我运行的代码example_project.py
:
***\src>: python examples\example_project.py
并ImportError: attempted relative import with no known parent package
阅读了一些关于 SO 的答案,发现我需要一些结构
sys.path.append(os.path.normpath(os.path.join(os.path.dirname(os.path.abspath(__file__)), os.pardir)))
存在example_project.py
我的example_project.py
导入部分如下所示:
import os, sys
sys.path.append(os.path.normpath(os.path.join(os.path.dirname(os.path.abspath(__file__)), os.pardir)))
from ..library import some_library_code
但这不起作用并且显示相同ImportError
UPD:
如果我更改from ..library *****
为from library *****
then 它可以工作,但 IDE 无法识别导入的类型并在import
子句周围显示错误