构建一个python abc接口,其基类派生自内置类型

时间:2015-03-22 09:01:53

标签: python abc

我想构建一个接口,其基类派生自python内置类型,如dict。为此,我使用标准库的python abc,但是当我运行以下测试时,在具体类实现中没有为缺少的方法引发异常。

import abc

class Base(dict):

    __metaclass__ = abc.ABCMeta

    @abc.abstractmethod
    def toto(self):
        pass

class Concrete(Base):
    pass

if __name__ == "__main__":
    c = Concrete()

如果类Base现在从object而非dict派生,则预期的abc机制可以正常运行。你对这种行为的原因有什么看法吗?这是预期的事情,如果是这样,如何规避这个?

0 个答案:

没有答案