如果我有2个非常深的python包:
com.acme.some.thing和com.acme.some.thing2。
他们两个都互相使用,所以东西会导入thing2,而thing2会导入东西。
然而,在Python中,由于循环导入,这将导致“无法导入名称X”错误。让它们互相使用的唯一方法是导入特定的函数名,这需要占用大量空间,如果两个模块具有相同的函数名,那么这也是不可能的。
我总是认为导入只是消除歧义名称的简写,对解释没有影响。所以循环导入应该没有任何影响。为什么Python中不允许这样做?