这可能是处理循环依赖项的重复项,但是我还没有找到同样的问题。
假设我在同一工作目录中有三个文件 void myScreenImpA::drawImage(myImageInt& img){
scrn.drawImage(static_cast<myImageImplA&>(img).getImpl()); //type unsafe cast
}
,a.py
和b.py
。在文件c.py
中,我从其他两个文件中导入一些方法,如下所示:
b.py
并尝试做一些效果很好的事情。
现在在from a import methodA
from c import methodC
中,我还从其他两个文件中导入了一些方法:
c.py
在这里,当我在from a import methodA
from b import methodB
中调用methodB时,它会弹出:
c.py
我发现,当我摆脱了在AttributeError: 'module' object has no attribute
中导入c.py
的部分时,它可以正常工作。 (这些文件不是要同时运行,所以这不是问题)
所以我的问题是,我看不到为什么会导致错误,以及为什么能解决问题。有人可以解释这种行为背后的直觉吗?