实用工具

处理指针

这些函数既可以从纯 Python 中调用,也可以在 nopython 模式下调用。

numba.carray(ptr, shape, dtype=None)

返回一个 Numpy 数组视图,该视图指向由 *ptr* 指向的数据,具有给定的 *shape*,并以 C 顺序排列。如果提供了 *dtype*,则将其用作数组的 dtype;否则,数组的 dtype 将从 *ptr* 的类型中推断。由于返回的数组是视图而非副本,因此对其进行写入将修改原始数据。

*ptr* 应该是一个 ctypes 指针对象(可以是使用 POINTER() 创建的类型化指针,也可以是 c_void_p)。

*shape* 应该是一个整数或整数元组。

*dtype* 应该是一个 Numpy dtype 或标量类(即,np.dtype('int8')np.int8 都接受)。

numba.farray(ptr, shape, dtype=None)

carray() 相同,但数据假定以 Fortran 顺序排列,数组视图也相应构建。