Python 我试图从';缓冲区';2.6中的类,但无法这样做

Python 我试图从';缓冲区';2.6中的类,但无法这样做,python,python-2.6,Python,Python 2.6,python解释器给了我以下错误 class memoryview(buffer): def tobytes(self): return self buf = memoryview('23') buf.tobytes() 为什么会这样请参见评论中链接的问题,了解这背后可能的原因 直接的技术原因与Python类在C中的声明方式有关。有趣的部分就在下面: 此字段为tp_flags,包含一个名为的潜在设置,此处不使用该设置。例如,如果是这样,则允许从缓冲区继承。查看此问题

python解释器给了我以下错误

class memoryview(buffer):
    def tobytes(self):
        return self

buf = memoryview('23')
buf.tobytes()

为什么会这样

请参见评论中链接的问题,了解这背后可能的原因

直接的技术原因与Python类在C中的声明方式有关。有趣的部分就在下面:

此字段为
tp_flags
,包含一个名为的潜在设置,此处不使用该设置。例如,如果是这样,则允许从
缓冲区继承

查看此问题
TypeError: Error when calling the metaclass bases
    type 'buffer' is not an acceptable base type
PyTypeObject PyBuffer_Type = {
    ...
    Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GETCHARBUFFER | Py_TPFLAGS_HAVE_NEWBUFFER, /* tp_flags */
    ...
};