Как конвертировать PyObject в массив C ++? - PullRequest
0 голосов
/ 05 декабря 2018

Я работаю с привязкой к python-c и сталкиваюсь со следующей проблемой.В классе Python есть атрибут, который называется средство, который является массивом формы (2,3).Если pInstance - это PyObject * этого класса, я хотел бы сделать что-то вроде этого:

PyObject* pMeans = PyObject_GetAttrString(pInstance,"means");
PyArrayObject* contig = (PyArrayObject*)PyArray_FromAny(pMeans,
PyArray_DescrFromType(NPY_DOUBLE),
    2, 3, NPY_ARRAY_CARRAY, NULL);

Что я получу, так это ValueError: объект слишком малой глубины для нужного массива.Я также попробовал простое преобразование:

PyArrayObject* contig = (PyArrayObject*)pMeans;

Как правильно сделать это преобразование?

...