如何使用NumPy C API创建数组切片?

Ale*_*eyn 5 python numpy python-c-api multidimensional-array

我想从C扩展中切换1D NumPy.我在C API中看到了各种辅助函数,用于创建新数组,重新整形,索引特定值等.但我没有看到任何类似PyArray_Slice1D(数组,开始,停止,步骤).这样的事情存在吗?

HYR*_*YRY 8

您可以使用Python API:创建切片对象PySlice_New(),然后调用PyObject_GetItem():

PyObject* PySlice_New(PyObject *start, PyObject *stop, PyObject *step)
PyObject* PyObject_GetItem(PyObject *o, PyObject *key)
Run Code Online (Sandbox Code Playgroud)