Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/127.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用不推荐使用的NumPy API有什么问题吗?_Python_C++_Numpy_Numpy Ndarray - Fatal编程技术网

Python 使用不推荐使用的NumPy API有什么问题吗?

Python 使用不推荐使用的NumPy API有什么问题吗?,python,c++,numpy,numpy-ndarray,Python,C++,Numpy,Numpy Ndarray,我想把Nuffy数组传递给C++,但是有一个不推荐的NoMPAPI,我不知道在哪里可以找到替代品。 它显示了一个警告消息,当我构建我的C++代码来制作库时, numpy\npy_1_7_已弃用_api.h(14):警告消息:使用弃用的numpy api,请使用“定义npy_否_已弃用_api npy_1_7_api_版本”将其禁用 使用不推荐使用的API有什么问题吗?如果我使用它,它只运行一次,然后退出我的程序,没有任何进一步的错误/警告消息(在导入c库的python代码中,这个cfunc应该在

我想把Nuffy数组传递给C++,但是有一个不推荐的NoMPAPI,我不知道在哪里可以找到替代品。 它显示了一个警告消息,当我构建我的C++代码来制作库时,

numpy\npy_1_7_已弃用_api.h(14):警告消息:使用弃用的numpy api,请使用“定义npy_否_已弃用_api npy_1_7_api_版本”将其禁用

使用不推荐使用的API有什么问题吗?如果我使用它,它只运行一次,然后退出我的程序,没有任何进一步的错误/警告消息(在导入c库的python代码中,这个cfunc应该在循环中运行多次)。当然,如果我禁用了不推荐的API,它只会告诉我它找不到那个API

下面是我的代码的一部分,用于接收numpy数组并将其转换为双数组以在c中处理++

#include <Python.h>
#include "numpy\ndarraytypes.h"
#include "numpy\ndarrayobject.h"
#include "numpy\arrayobject.h"

static PyObject* cfunc(PyObject* self, PyObject* args)
{
PyArrayObject* numpyarray;
double* carray;

if (!PyArg_ParseTuple(args, "O", &numpyarray))
{
return NULL;
}
carray = (double*)numpyarray->data; // When I build this code, it says 'data' is not a member of 'tagPyArrayObject'
#包括
#包括“numpy\ndarraytypes.h”
#包括“numpy\ndarrayobject.h”
#包括“numpy\arrayobject.h”
静态PyObject*cfunc(PyObject*self,PyObject*args)
{
PyArrayObject*numpyarray;
双*卡雷;
if(!PyArg_parsetup(args,“O”&numpyarray))
{
返回NULL;
}
carray=(double*)numpyarray->data;//当我构建这段代码时,它说'data'不是'tagPyArrayObject'的成员
如果你有任何想法,请告诉我

非常感谢你

致以最良好的祝愿, JESuh

来自:

不推荐直接访问结构字段。请改用
PyArray.*(arr)
表单

对于
数据
,也就是说。请注意,不能保证NumPy数组是连续的(或一维的),并且您没有进行任何安全检查。单纯地索引数组的缓冲区是不安全的


至于使用不推荐使用的API的问题,不推荐使用的API可能会在将来的NumPy版本中删除。

非常感谢!PyArray_数据(PyArrayObject*arr)运行良好:)