2012-04-14 117 views

回答

4

是的,请使用tp_as_mapping来代替。

它的mp_subscript需要PyObject *,所以你可以使用任何东西作为索引/键。

为了理解它们之间的关系,你可以看一下PyObject_GetItem()的来源,其中(如文档所述)等效于Python o[key]表达式。你会看到它首先尝试tp_as_mapping,如果那不是,那么键是int,它会尝试tp_as_sequence

相关问题