为什么在Java中允许循环导入,而在Python中不允许循环导入?

时间:2016-10-02 16:34:28

标签: python import

如果我有2个非常深的python包:

com.acme.some.thing和com.acme.some.thing2。

他们两个都互相使用,所以东西会导入thing2,而thing2会导入东西。

然而,在Python中,由于循环导入,这将导致“无法导入名称X”错误。让它们互相使用的唯一方法是导入特定的函数名,这需要占用大量空间,如果两个模块具有相同的函数名,那么这也是不可能的。

我总是认为导入只是消除歧义名称的简写,对解释没有影响。所以循环导入应该没有任何影响。为什么Python中不允许这样做?

0 个答案:

没有答案