2

我有一个这样的项目结构......

app/
    main.py
    app/
        __init__.py
        boot.py
        server.py
        controllers/
            __init__.py
            home.py

进口是...

# main.py
from app import server

# server.py
from . import boot

# boot.py
from . import controllers

# controllers/__init__.py
from . import home

# controllers/home.py
from .. import boot

现在除了最后一个之外,所有的导入都在工作。抛出的错误是......

ImportError: cannot import name boot

有什么问题?(我正在使用 Python 3.2)

4

1 回答 1

8

您正在 importboot正在 import controllers,然后要求它 import homehome然后尝试 import boot,但尚未完成导入。不要这样做,你在这里创建了一个循环依赖。

另请参阅Python 中的循环导入依赖项

于 2012-05-22T15:59:25.537 回答