我看过Python的NumPy包中的数据类型,但我发现数据类型'intp'的描述有点混乱。它的描述是这样的:
既然ssize_t是用来存储变量大小的,那么既然和C的ssize_t一样,为什么这里还要用indexing这个词呢?
主要有两点需要注意:
intp
用于带有 return_index=True
的独特函数中。因此,np.intp
数组包含它们指向的各个值的indices。
np.intp
实际上不是特殊的数据类型,而是类型别名,p指向相应平台上使用的np.int32/64
。
更多细节:
如评论中所述,
ssize_t
指的是指针的大小。因此,intp
的大小取决于平台,并且可能与同一平台上的 int
不同。
有符号整数类型 [...] 的别名,用作默认整数和索引。
自从写这个问题以来,numpy 1.20+ 发生了一些变化
另请参阅: Numpy 参考文档 和相关问题,获取更新的信息: