数据类型

NumPy支持比Python更多的数据类型,详细可见下表。

数据类型长度描述
bool_1布尔值
int_32/64默认整型,相当于C的long
intc32/64整型,相当于C的int
intp32/64索引的整型,相当于C的size_t
int888位整型
int161616位整型
int323232位整型
int646464位整型
uint888位无符号整型
uint161616位无符号整型
uint323232位无符号整型
uint646464位无符号整型
float6464位浮点型
float1616半精度浮点型,1位符号位,5位指数,10位尾数
float3232单精度浮点型,1位符号位,8位指数,23位尾数
float6464双精度浮点型,1位符号位,11位指数,52位尾数
complex_128128位复数型
complex6464由两个32位浮点数表示
complex128128由两个64位浮点数表示

NumPy的数据类型一般采用np.float32的格式使用。

数据类型对象描述了应用于数组的固定内存块的解释,主要包括以下几个方面的内容:

  • 数据类型;
  • 数据大小;
  • 字节序;
  • 结构化类型的字段名称,每个字段的数据类型以及每个字段占用的内存块部分;
  • 子序列的形状和数据类型。

数据类型对象,可以由numpy.dtype(object, align, copy)方法构造,其中,align参数表示是否像C的结构体一样在字段间添加间隔,copy参数表示是否要生成object的新副本,否则将使用引用。