numpy的速度为什么比Python快,有以下几个原因:
它分配的内存是连续的,这个就是c连续和f连续。
可以参加:知乎
它是由C实现了大部分函数
在更进一步之前,你最好对numpy的结构和一些概念有所了解。
至于什么是stride,什么是dtype,请自行学习。
一个numpy的结构体是:
ndarray = block of memory + indexing scheme + data type descriptor
* raw data
* how to locate an element
* how to interpret an element
这是C中的结构体的定义:
typedef struct PyArrayObject {
PyObject_HEAD
/* Block of memory */
char *data;
/* Data type descriptor */
PyArray_Descr