从Python向C++传递变量,以全速运行C++(不是Python速度)

2024-05-19 09:47:34 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在用Python代码执行一些对Python来说太慢的操作。你知道吗

我需要解释一下我正在做的事情的全球背景。你知道吗

我正在用python从一个板上读一些输入。这是一个连续的操作(我从电路板连续读取数据)。你知道吗

我需要连续地处理这些数据,也需要对这些数据做一些计算。实际上,它们保存在numpys数组中。你知道吗

< >为了提高thoSE计算的速度,我想用C或C++来运行它们。你知道吗

<> p>但是由于所有事情都是连续的,所以我需要一个非常快速的从Python到C++的TooSuffy数组。因此,我的问题如下:

从Python运行C++代码的更好方法是什么,从NUMPY数组到C++表的变量传递是最快的?在理想情况下,C++代码“<强>直接< /强>”是否可以读取内存中的NUMPY数组?你知道吗

我读过一些关于Python中使用C++的话题,但是我不确定C++是否将以全速运行,或者只是在Python中简单地使用C++代码(,但它运行得比完全C++程序慢)。你知道吗


Tags: 数据方法代码numpy数组读取数据事情速度
1条回答
网友
1楼 · 发布于 2024-05-19 09:47:34

通过cython使用预编译库可以实现您想要的目标。你知道吗

< >将C/C++代码编译成动态库(在Windows上.*.nix,.dll);^ {CD1>},您想从Python中使用的函数。你知道吗

然后可以使用ctypes.cdll.LoadLibraryhttps://docs.python.org/3/library/ctypes.html)在python代码中加载库,并使用numpy.ctypeslib.ndpointerhttps://docs.scipy.org/doc/numpy/reference/routines.ctypeslib.html)将指针传递给numpy数组。你知道吗

如果你确保NUMPY数组是连续的,它可以像预期的那样在C/C++中使用。你知道吗

相关问题 更多 >

    热门问题