numpy支持的数据类型比Python内置的类型多很多,基本上可以和C语言的数据类型对应上, 其中部分类型对应为Python内置的类型。下表列举了常用的Numpy基本类型。
名称 | 描述 |
bool_ | 布尔数据类型(True 或者 False) |
int_ | 默认的整数类型(类似于C语言中的long,int32 或 int64) |
intc | 与C的int类型一样, 一般是int32 或者 int64 |
intp |
用于索引的整数类型(类似于C的ssize_t, 一般情况下任然是 int32 或 int64) |
int8 | 字节(- 128 to 127) |
in16 | 整数(-32768 to 32767) |
int32 | 整数(-2147483648 to 2147483647) |
int64 | 整数(-9223372036854775808 to 9223372036854775807) |
uint8 | 无符号整数(0 to 255) |
uint16 | 无符号整数(0 to 65535) |
uint32 |
无符号整数(0 to 4294967295) |
uint64 | 无符号整数(0 to 18446744073709551615) |
float_ | float64 类型的简写 |
float16 | 半精度浮点数, 包括: 1个符号位, 5 个指数位, 10 个尾数位 |
complex_ | complex128类型的简写, 即 128 位复数 |
complex64 | 复数, 表示双32位浮点数(实数部分和虚数部分) |
complex128 | 复数, 表示双64 位浮点数(实数部分和虚数部分) |
numpy 的数值类型实际上是 dtype 对象的实例,并对应唯一的字符, 包括 np.bool_, np.int32, np.float32 ,等等。
数据类型对象(dtype)
数据类型对象是用来描述与数组对应的内存区域如何使用,这依赖如下几个方面:
1、数据的类型(整数, 浮点数或者Python 对象)
2、数据的大小 (例如, 整数使用多少个字节存储)
3、数据的字节顺序(小端法或大端法)
4、在结构化类型的情况下,字段的名称、每个字段的数据类型和每个字段索取的内存的部分
5、如果数据类型是数组, 它的形状和数据类型
字节顺序是通过对数据类型预先设定“<”或“>”来决定的, “<”意味着小端法(最小值存储在最小的地址,即低位组放在最前面)。“>” 意味着大端法(最重要的字节存储在最小的地址, 即高位组放在最前面)
dtype对象是使用以下语法构造的:
numpy.dtype(object, oligin, copy)
1、object—要转换为数据类型对象
2、aligin- 如果为true, 填充字段使其类似 C 的机构体
3、copy-复制 dtype 对象,如果为false,则是对内置数据类型的引用
原文:https://www.cnblogs.com/jcjc/p/10790923.html