我得到了这个错误
Traceback (most recent call last):
File "/Users/alex/dev/runswift/utils/sim2014/simulator.py", line 3, in <module>
from world import World
File "/Users/alex/dev/runswift/utils/sim2014/world.py", line 2, in <module>
from entities.field import Field
File "/Users/alex/dev/runswift/utils/sim2014/entities/field.py", line 2, in <module>
from entities.goal import Goal
File "/Users/alex/dev/runswift/utils/sim2014/entities/goal.py", line 2, in <module>
from entities.post import Post
File "/Users/alex/dev/runswift/utils/sim2014/entities/post.py", line 4, in <module>
from physics import PostBody
File "/Users/alex/dev/runswift/utils/sim2014/physics.py", line 21, in <module>
from entities.post import Post
ImportError: cannot import name Post
你可以看到我使用了相同的 import 语句,并且运行良好。关于循环导入有什么不成文的规定吗?如何在调用堆栈的下面使用相同的类?
另请参阅 在 Python 中使用相互导入或循环导入时会发生什么?,了解什么是允许的以及什么导致了 WRT 循环导入的问题。有关解决和避免循环依赖关系的技术,请参见 对于“ Import Error: Can not import name X”或“ AttributeError: ... (很可能是由于循环导入)”,我能做些什么?。