Вопросы по теме 'python-c-api'

numpy массив C API
У меня есть функция C++, возвращающая std::vector, и я хочу использовать ее в python, поэтому я использую C numpy api: static PyObject * py_integrate(PyObject *self, PyObject *args){ ... std::vector<double> integral;...
5996 просмотров
schedule 02.01.2023

Модуль .so не импортируется в python: динамический модуль не определяет функцию инициализации
Я пытаюсь написать оболочку Python для функции C. После написания всего кода и его компиляции Python не может импортировать модуль. Я следую примеру, приведенному здесь . Я воспроизвожу его здесь, исправив некоторые опечатки. Есть файл...
9382 просмотров
schedule 12.07.2023

Как поймать python stdout в коде С++
У меня есть программа, которая во время работы иногда требует вызова python для выполнения некоторых задач. Мне нужна функция, которая вызывает python и перехватывает python stdout и помещает его в какой-то файл. Это объявление функции...
17544 просмотров

Можно ли изменить PYTHONPATH во время выполнения?
У меня есть приложение C++, динамически связанное с интерпретатором Python. Я хочу иметь возможность импортировать модули Python из определенного каталога. Я хочу изменить PYTHONPATH для своего процесса, чтобы sys.path включал пути, которые я...
9928 просмотров

С++ 0x std::shared_ptr против boost::shared_ptr
У меня есть код С++, который активно использует shared_ptr и STL. Общий заголовок говорит #include<boost/shared_ptr.hpp> using boost::shared_ptr; // for shared_ptr using namespace std; // for STL Сейчас я хотел переключиться на...
4135 просмотров
schedule 19.09.2022

Встраивание Python в C — импорт модулей
У меня возникают проблемы с использованием Embedded Python для C согласно Документация - Всякий раз, когда я пытаюсь использовать импортированные модули, я получаю: Необработанное исключение по адресу 0x1e089e85 в PythonIncl.exe: 0xC0000005:...
8519 просмотров
schedule 08.06.2022

встраивание питона
Я пытаюсь вызвать функции Python из кода C, и я следовал примеру из здесь У меня также есть правильные каталоги файлов включения, каталоги библиотек и ссылки на python32.lib (я использую python 32), однако ошибка заключалась в том, что...
7258 просмотров
schedule 08.04.2023

Python C-API: как передать строку C с нулевым завершением UNICODE UTF-16 в мое приложение python без преобразования в UTF-8?
питонисты, Я пытаюсь написать расширение Python на C, которое передает большое количество строк C с кодировкой UNICODE UTF-16 с нулевым завершением в мое приложение Python. Строки UNICODE из моей библиотеки C гарантированно всегда будут...
679 просмотров
schedule 23.07.2023

Похоже, код C в C-API Python возвращает ptr в переменную стека. Что мне не хватает?
Я читал файл methodobject.c, потому что пытался узнать о создании расширений C для Python, когда увидел следующий фрагмент кода: PyObject * PyCFunction_Call(PyObject *func, PyObject *arg, PyObject *kw) { PyCFunctionObject* f =...
170 просмотров
schedule 25.07.2022

Передача объектов python в качестве аргументов функции C/C++ с использованием ctypes
У меня есть dll с функцией, которая принимает PyObject в качестве аргумента, что-то вроде void MyFunction(PyObject* obj) { PyObject *func, *res, *test; //function getAddress of python object func = PyObject_GetAttrString(obj,...
3934 просмотров
schedule 10.07.2023

Реализация числовых методов всегда возвращает NotImplemented
Я пишу новый тип расширения, но у меня возникла проблема с настройкой числовых операций (таких как сложение/вычитание/умножение). Мне удалось установить некоторые операции на месте, а обычные операции не вызываются. Например, у меня есть функция:...
303 просмотров
schedule 30.08.2022

Массив C в PyArray
Я пишу Python C-Extension без использования Cython. Я хочу выделить двойной массив в C, использовать его во внутренней функции (которая оказывается в Fortran) и вернуть его. Я указываю, что интерфейс C-Fortran отлично работает в C. static...
10974 просмотров

Python вызывает DLL, вызывающую Python, WindowsError: исключение: чтение нарушения прав доступа 0x00000004
У меня есть приложение, написанное на Python. Приложение вызывает некоторые функции в dll (используя ctypes), которые вызывают некоторые функции из API Python C для загрузки и запуска некоторых функций в (другом) модуле Python. Это вызывает...
4136 просмотров
schedule 09.08.2022

Возврат массива numpy из расширения C
Ради изучения чего-то нового я в настоящее время пытаюсь переопределить функцию numpy.mean() в C. Она должна принимать трехмерный массив и возвращать двумерный массив со средним значением элементов вдоль оси 0. Мне удается вычислить среднее значение...
5088 просмотров
schedule 03.03.2024

Numpy C++: как перебрать PyArrayObject без segfault
Для меня все следующее приводит к segfault: my_array->descr->subarray->shape; my_array->dimensions; PyArray_SHAPE(my_array); PyArray_DIMS(my_array); PyArray_ITEMSIZE(my_array); PyArray_NBYTES(my_array); Моя функция выглядит так:...
1762 просмотров
schedule 20.09.2022

Отсутствуют функции API Python 3
Я что-то кодировал на работе, и кажется, что некоторые функции C API, предоставляемые python, не работают. Я пробовал в основном функцию проверки типов, например: import ctypes python33_dll = ctypes.CDLL('python33.dll') a_float =...
124 просмотров
schedule 20.04.2023

Вернуть список новых объектов пользовательского класса в Python C API
Мне нужно создать новый список через API Python C, содержащий новые копии объектов класса Quaternion , который я написал (на C++). [На самом деле, мне бы очень хотелось array , но подойдет любая последовательность.] Но я получаю ошибки seg со...
793 просмотров

Передать аргументы командной строки в приложение пакета python 2.7.6 с использованием C API
Я новичок в python, и теперь мне нужно вызвать программу python 2.7.6, используя ее C API. Программа python представляет собой пакет python и выполняет несколько команд варианты линии. Вы можете запустить его следующим образом: python...
883 просмотров
schedule 31.07.2022

Как преобразовать numpy.ndarray в cv::Mat с помощью Python/C API?
Я использую python в качестве интерфейса для работы с изображением, но когда мне нужно написать некоторые пользовательские функции для работы с матрицей, я обнаруживаю, что numpy.ndarray работает слишком медленно при повторении. Я хочу передать...
1739 просмотров
schedule 17.04.2022

Как анализировать только «kwargs» и пропускать аргументы при вызове PyArg_ParseTupleAndKeywords?
Я вызываю функцию, которая принимает список позиционных аргументов, за которыми следуют аргументы ключевого слова. Я хочу обрабатывать args и kwargs отдельно. К сожалению, в отличие от PyArg_ParseTuple для позиционных аргументов, не существует...
989 просмотров
schedule 10.05.2022