NumPy 是 Python 科学计算的基础包,类型(dtype)很多。
numpy 支持的数据类型比 Python 内置的类型要多很多,基本上可以和 C 语言的数据类型对应上。numpy 的数值类型实际上是 dtype 对象的实例,并对应唯一的字符。
为什么要有数据类型?
其实对于很多行内的人来说这是一个老生常谈的问题,也是默认潜规则。凡事高级语言都要有数据类型,为什么?只要是小白或者刚入行的人会问这个问题。为啥非得要有数据结构,都用一个结构不好吗?不香吗
装逼的答案: curry-howard correspondence
稍微说人话的答案
- 对机器而言,类型描述了内存中的电荷是怎么解释的。
- 对编译器或者解释器而言,类型可以协助确保上面那些电荷、字节在程序的运行中始终如一地被理解。
- 对程序员而言,类型可以帮助他们命名、组织概念,帮助编纂文档,支持交互式编辑环境等。
再简单一点就是: 为了让计算机知道你要怎么用它。
- 限制变量中所存储的数据(至少是可以兼容的)
- 限制变量所占空间
数据类型对象 (dtype)
- 数据的类型(整数,浮点数或者 Python 对象)
- 数据的大小(例如, 整数使用多少个字节存储)
- 数据的字节顺序(小端法或大端法)
- 在结构化类型的情况下,字段的名称、每个字段的数据类型和每个字段所取的内存块的部分
- 如果数据类型是子数组,那么它的形状和数据类型是什么。
