使用 SWIG 的多个 NumPy 数组

2024-04-29 03:31:47 发布

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

我使用SWIG将Python数组从NyPy传递到C++代码:

%include "numpy.i"
%init %{
import_array();
%}

%apply (float* INPLACE_ARRAY1, int DIM1) {(float* data, int n)};

class Class 
{
  public: 
  void test(float* data, int n)
  {
    //...
  }
};

在Python中:

^{pr2}$

这是可行的,但是如何将多个numpy数组传递给同一个函数呢?在


Tags: 代码importnumpydataincludeinit数组float
1条回答
网友
1楼 · 发布于 2024-04-29 03:31:47

我从一个同事那里找到了答案:

%apply (float* INPLACE_ARRAY1, int DIM1) {(float* data1, int n1), (float* data2, int n2)};

class Class 
{
  public: 
  void test(float* data1, int n1, float* data2, int n2)
  {
    //...
  }
};

现在两个numpy数组被传递给Class::test。在

相关问题 更多 >