[英]Python circular dependency
第一個嚴肅的 python 項目和堆棧上的第一個問題:)。
我正在構建一個具有不同屏幕的 GUI。 我有一個帶有所有常用值的 BaseScreen class,每個特定屏幕都繼承自它,並且在其 own.py 文件中進行組織。 大多數屏幕將包含“homerow”一行 5 個按鈕,這些按鈕在屏幕之間切換,這在 BaseScreen 中定義。
問題是; 單擊 homerow 按鈕時,我需要創建相應屏幕 class 的實例以進行更改,這需要我導入所述屏幕 class。 這些屏幕類在繼承時已經需要導入 BaseScreen,因此循環依賴並且我的程序沒有運行。
想知道解決這個問題和類似問題的最佳方法是什么? 我對類的使用和我的 GUI 結構本身也可以嗎? 謝謝。
這是否說明了您的問題?
base_screen.py
class BaseScreen:
def click_button(self):
return BlueScreen()
在 blue_screen.py
import BaseScreen
class BlueScreen(BaseScreen):
...
如果這是一個很好的說明,沒有什么說你不能這樣做:
class BaseScreen:
def click_button(self):
from blue_screen import BlueScreen
return BlueScreen()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.