Python导入头痛

Joh*_*åde 2 python import

我有以下目录结构:

Main.py
A/
    __init__.py
    B/
        __init__.py
        C/
            __init__.py
Run Code Online (Sandbox Code Playgroud)

该文件Main.py包含代码

from A import B
from B import C
Run Code Online (Sandbox Code Playgroud)

__init__.py文件是空的.当我运行时,Main.py我收到错误消息

Traceback (most recent call last):
    File ...\Main.py, line 2, in <module>
    from B import C
  ImportError: No module named B
Run Code Online (Sandbox Code Playgroud)

是什么导致此错误消息?

Tho*_*mas 8

处理import语句时,Python不会查看您已导入的内容; 它只是查看导入路径中是否存在给定模块.所以你需要像这样写:

from A import B
from A.B import C
Run Code Online (Sandbox Code Playgroud)