AttributeError:模块没有属性,同时避免循环引用错误

时间:2018-10-30 21:56:44

标签: python python-3.x pycharm attributeerror

我想使用python中的M-VC模式创建小型应用程序。我正在使用PyCharm,文件夹结构看起来像this

为避免循环引用出现问题,我使用import而不是from ... import

当我的viewController.py看起来像这样时,程序执行没有错误:

import model
class ViewController:
    def initialize(self, mod):
        self.model = mod

初始化方法内添加model.Model表达式会导致错误:AttributeError: module 'model' has no attribute 'Model'为什么在带有viewController.ViewController的model.py中起作用?怎么了?

[new] viewController.py

import model
class ViewController:
    def initialize(self, mod:model.Model):
        self.model = mod

返回/ __ init_.py

import model
import viewController
mModel = model.Model()
mVC = viewController.ViewController()
mModel.initializeApp(mVC)

model.py

import viewController
class Model():
    def initializeApp(self, viewContr: viewController.ViewController):
        self.vc = viewContr
        self.vc.initialize(self)

0 个答案:

没有答案