Главная » C++ » Создание расширенного объекта типа Python в Embedded Interpreter C / Stack Overflow
Создание расширенного объекта типа Python в Embedded Interpreter C / Stack Overflow
Я пытаюсь определить новый объект типа Python, используя документацию, найденную здесь https://docs.python.org/3/extending/newtypes.html. В данный момент я просто следую разделу «Основы», определяющему новый тип с теми же именами, которые используются в документации. Затем я встраиваю интерпретатор Python в простое приложение, вызывая PyImport_AppendInittab("noddy", &PyInit_noddy); с последующим Py_Initialize(); а затем я запускаю простой скрипт на Python, используя PyRun_SimpleString(script); где «скрипт» на самом деле следующий
import noddy
mytest = noddy.Noddy(),
который находится в документации в качестве примера создания объекта нового расширенного типа. У меня проблема в том, что это приводит к ошибке TypeError: cannot create 'noddy.Noddy' instances,
Что я здесь не так делаю? Я ценю, что не предоставил никакого исходного кода, но я просто скопировал пример из документации. Я понимаю, что делает каждая часть, но я не могу найти проблему. Модуль с именем noddy создан, объект Noddy добавлен, так почему я не могу создать объект noddy.Noddy (), как указано в документации?
Буду признателен за любую помощь, я пытался найти решение этой проблемы сам, но потерпел неудачу. Заранее спасибо.