Как определить новый тип (класс) в Python с помощью C API?

Я пытаюсь использовать API Python C для определения нового класса в модуле, который выставил бы определенную функциональность, записанную в C в код Python. Я конкретно хочу иметь его в форме класса и не ряда функций модуля.

Однако я ничего не могу найти относительно этой конкретной задачи в официальной документации. Самой близкой, которую я мог найти, является функция PyClass_New (в заголовке Python.h), но это не упоминается нигде в официальных документах, таким образом, я предполагаю, что это, как предполагается, не используется.

Так, что надлежащий путь состоит в том, чтобы определить новый класс Python из кода C?

Спасибо.

15
задан user352864 7 June 2010 в 14:46
поделиться

2 ответа

22
ответ дан 1 December 2019 в 02:37
поделиться

Эта часть документации (и связанных с ней) должна предоставить вам большую часть необходимой информации. Источники xxsubtype.c предоставляют один пример модуля, который определяет новый класс (как подкласс list , чтобы точно показать, как это сделать) и xxmodule.c показывает (среди прочего) также, как определить новый тип.

8
ответ дан 1 December 2019 в 02:37
поделиться
Другие вопросы по тегам:

Похожие вопросы: