鹼/ DIR1/a.py的Python中的曲線圖的對等節點之間的週期性進口
from base.dir2.b import B
class A:
def get_peer(self):
return B()
鹼/ DIR2/b.py
from base.dir1.a import A
class B:
def get_peer(self):
return A()
這實際上表示在一個非常複雜的對等關係樹。 A是一種葉節點,B是另一種葉節點。他們可以互爲對方。
這不起作用,因爲我有一個週期性的進口。
我想弄清楚什麼是最佳項目結構,使得A & B可以實例化對方而不會導致週期性導入。
編輯:我真的很喜歡一個解決方案,不會是這樣的:
import base
class A:
def get_peer(self):
return base.dir2.b.B()
這是當我開始走這路的實際代碼了嚴重的混亂。
因此,既然問題是,我的代碼,現在變成一個爛攤子: C = base.dir2.bB() 請記住,這在實際的代碼被簡化名稱較長,他們在單個語句中多次引用。這是荒謬的笨拙。 – amirpc
@amirpc'進口ridiculously.long.name.of.module作爲短名稱' –
這是我見過要做到這一點的最好方式,謝謝! – amirpc