Python导入错误,找不到模块

时间:2016-10-23 03:16:14

标签: python import

我的项目结构是这样的:

dir A/
    main.py
    __init__.py
    modules/
        a.py
        __init__.py
        components/
            b.py
            c.py
            __init__.py

main.py中,我写了from modules.a import xxx。在a.py,我想导入模块b.py,在b.py中,我想要导入c.py

问题是,我在from components.b import xxx中写了a.py,当我运行main.py时出现导入错误。如果我在from c import xxx中写b.py,我会收到同样的错误。但如果我直接运行b.py,它就会顺利进行。我已多次尝试过并发现我必须将dir A作为根目录编写所有导入句子。例如,如果我在from modules.components.b import xxx中编写a.py,在from modules.components.c import xxx中编写b.py,则该程序会顺利进行。

有人说改变环境路径可以解决这个问题。但是,一旦改变整个项目的位置,我不必一次又一次地设置路径吗?

有没有合适的解决方案?我很高兴听到别人的帮助。

1 个答案:

答案 0 :(得分:0)

Relative imports.

from .components.b import xxx