gpt4 book ai didi

python - 奇怪的不一致 python ImportError - 可能的循环依赖?

转载 作者:太空宇宙 更新时间:2023-11-04 06:28:07 25 4
gpt4 key购买 nike

我正在尝试重构一些 Python 代码,但遇到了一个我不理解的导入错误。我怀疑某处可能存在循环依赖,但我没有看到它,而且我没有从错误消息中获得太多提示。代码库很大,但这里有两个有趣的模块:

radian/models.py 定义了一个名为 ACount

的类

datalayer/radian.py 中有以下行:

from radian.models import ACount

当我运行代码(交互地或从主程序)时,导入以我无法理解的方式失败。

>>> from radian.models import ACount
>>> import datalayer.radian
Traceback (most recent call last):
File "<console>", line 1, in <module>
File "/Users/leopd/dev/dbproj/datalayer/radian.py", line 10, in <module>
from radian.models import ACount
ImportError: No module named models

我最好的猜测是某处存在循环依赖性——radian 正在导入一些导入datalayer 的东西。但我没有看到。而且错误消息对我来说没有任何意义。知道发生了什么事吗?

-- 更新--

我在 Mac 上使用 python 2.6.1。 __init__.py 文件中有一些代码,但它们只从标准 python 包中导入。

最佳答案

datalayer文件夹中的任何模块(包括radian.py),当它看到from radian时,将假定datalayer/radian.py 是相关模块。你可能需要做

from __future__ import absolute_import

datalayer/radian.py 和其他类似受影响的模块中,然后检查所有导入以确保它们是绝对的。您可以重命名 datalayer/radian.py 和引用它的导入,这取决于引用该模块的位置。

关于python - 奇怪的不一致 python ImportError - 可能的循环依赖?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6257394/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com