当对象的init /构造函数依赖于同一个类的另一个实例时,如何处理?

时间:2017-06-28 14:40:06

标签: python oop language-agnostic builder

我正在使用随机模型,并最终处于模型阶数n的实例化取决于较低阶模型的情况,以便正确地评估先验。换句话说,实例变量的初始值依赖于同一个类的另一个实例。

这样做的直接结果是__init__方法将需要同一个类的另一个实例,这显然最终会调用自己...进入类似的东西感觉真的很不稳定,即使它可以使工作。

想象一下这个想法:

def __init__(self, order, other, ...):
  if(other.order != order -1):
    raise ValueError(...) # <- complain loudly

  self.A = other.trainedA
  self.B = other.trainedB
  ...
  self.train()

我一直在阅读有关不同creation pattern designs的内容,直觉上我觉得在这种情况下,Builder模式听起来很合适。考虑到每次执行我很可能会调用Builder一次,这是否有点矫枉过正?

解决此问题的最简单/最直观的方法是什么?

0 个答案:

没有答案