[英]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.