python中size的用法_在Python中PyArray_SIZE的正确用法是什么?
我是新手操作C中的numpy數組.這里有一段代碼讓我1)將1-D,64-bit-float numpy數組列表傳遞給C和2)循環遍歷每個數組,打印其內容.
#include
#include
#include
#include "Python.h"
#include "numpy/arrayobject.h"
#include "list_of_ndarrays_lib.h"
void print_all(PyObject *list) {
int i, j;
PyArrayObject *arrayObj;
double *arrayData;
for (i = 0; i < PyObject_Length(list); i++) {
arrayObj = (PyArrayObject *) PyList_GET_ITEM(list, i);
arrayData = PyArray_DATA(arrayObj);
for (j = 0; j < PyArray_SHAPE(arrayObj)[0]; j++) {
printf("%f ", arrayData[j]);
}
printf("\n");
}
}
這段代碼可以工作,但是PyArray_SHAPE(arrayObj)[0]并沒有推廣到n維數組,如果我用PyArray_SIZE(arrayObj)替換它,我會得到一個分段錯誤.
PyArray_SIZE我做錯了什么?
只需添加import_array();調用print_all()開頭.它將初始化數組函數C-API.
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的python中size的用法_在Python中PyArray_SIZE的正确用法是什么?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: html设置文字超过字数_css限制文字
- 下一篇: vue单选框选中_vue中单选框与多选框