从mentalopy.visual.DotStim继承时出现元类错误

时间:2015-12-08 06:31:25

标签: inheritance psychopy

我正在尝试从visual.DotStim继承一个类

class JitterDots(visual.DotStim):
...

我总是得到臭名昭着的元类错误:

  

TypeError:调用元类基类元类冲突时出错:派生类的元类必须是其所有基类的元类的(非严格)子类

我知道你可以通过合并所有基类的元类来解决这个问题,但是我无法看到DotStim或其基类在哪里使用任何元类,所以我真的对此感到困惑。

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

这似乎对我有用:

from psychopy.visual import dot

class JitterDots(dot.DotStim):
    pass

与您的直接问题无关,但仍有可能陷阱: 我还注意到DotStim的一些基础/父母直接从object继承,但从未通过super()初始化他们的父母 - 尽管{{1}在super()中调用。但是,“这样做会导致其他类'DotStim.__init__()方法无法被调用”,根据https://fuhm.net/super-harmful/