3

Python C-API を使用して引数を__getitem__取るクラスを定義することは可能ですか? tupleaのメンバーsq_itemtp_as_sequenceメンバーは a でPyTypeObject なければならないssizeargfuncので、その方法がわかりません。(しかし、NumPyndarrayがそれを行うと思います。)

4

1 に答える 1

5

はい、tp_as_mapping代わりに使用します。

mp_subscriptがかかるので、何PyObject *でもインデックス/キーとして使用できます。

PyObject_GetItem()それらがどのように関連しているかを理解するには、(ドキュメントにあるように) Pythono[key]式と同等であるソースを見ることができます。tp_as_mapping最初に試行し、それがなく、キーがintである場合は、試行することがわかりますtp_as_sequence

于 2012-04-14T09:46:40.480 に答える