Python C API: преобразовать указатель PyObject в тип данных C - PullRequest
0 голосов
/ 21 апреля 2020

Мне нужно преобразовать PyObject* в и int переменную в C.
Я понимаю, что мы можем проанализировать аргументы с PyArg_ParseTuple и что мы можем построить Python объект, используя Py_BuildValue, но что такое обратное значение Py_BuildValue?

Например, скажем, у меня есть Python кортеж (1, 2), и я хотел бы использовать содержимое кортежа для доступа к массиву:

int x, y;
PyObject* t_0, t_1;

t_0 = PyTuple_GetItem(tuple_ref, 0);
t_1 = PyTuple_GetItem(tuple_ref, 1);
//t_0 and t_1 are of type PyObject* and I need to use them to access a C array 
//convert t_0 and t_1 to int and save them in x and y, how?
...