Joh*_*åde 3 python python-c-api
是否有可能定义一个类__getitem__,需要一个tuple使用Python C-API的说法?的sq_item成员
必须是的tp_as_sequence成员,所以我不知道该怎么做。(但我认为NumPy会这样做。)PyTypeObjectssizeargfuncndarray
是的,tp_as_mapping改为使用。
它mp_subscript需要一个,PyObject *所以您可以使用任何东西作为索引/键。
要了解它们之间的关系,您可以查看其来源PyObject_GetItem()(如文档所述)与Python o[key]表达式等效。您将看到它首先尝试tp_as_mapping,如果不存在,并且键在int它尝试tp_as_sequence。