我的项目结构如下:
proj/
src/
__init__.py
etc/
__init__.py
visitor.py
obj/
__init__.py
node.py
tests/
__init__.py
visitor_tests.py
我在visitor.py
课程中导入visitor_tests.py
时遇到问题,因为其中有node.py
的导入无法找到。
在visitor_tests.py
我使用以下方式导入访问者本身:
from src.etc.visitor import Visitor
但是我收到以下错误:
ModuleNotFoundError: No module named 'obj.node'; 'obj' is not a package.
在visitor.py
中,我对节点进行了以下导入:
from obj.node import Node
我使用pytest tests/visitor_tests.py
根目录中的proj/
运行测试。
答案 0 :(得分:0)
而不是在visitor_tests.py&中使用src.etc.visitor,obj.node用户sys.path.append。 visitor.py
import sys
sys.path.append("/path/to/obj")
sys.path.append("/path/to/etc")