NumPy支持比Python更多的数据类型。介绍一些常用的数据类型,以及这些数据类型之间的转换。
如前面所述,通过“ndarray.dtype”可以创建一个表示数据类型的对象。要想获取数据类型的名称,则需要访问name属性进行获取,示例代码如下。
In[20]:data_one=np.array([[1,2,3],[4,5,6]])
In[21]:data_one.dtype.name
Out[21]:'int32'
注意:
在默认情况下,64位windows系统输出的结果为int32,64位Linux或macOS系统输出结果为int64,当然也可以通过dtype来指定数据类型的长度。
上述代码中,使用dtype属性查看data_one对象的类型,输出结果int32。从数据类型的命名上可以看出,NumPy的数据类型由一个类型名(如int、float)和元素位长的数字组成。
如果在创建数组时,没有显式地指明数据的类型,则可以根据列表或元组中的元素类型推导出来。默认情况下,通过zeros()、ones()、empty()函数创建的数组中数据类型为float64。
表1罗列了NumPy中常用的数据类型。
表1NumPy的数据类型
数据类型 | 含义 |
bool | 布尔类型,值为True或False |
int8、uint8 | 有符号和无符号的8位整数 |
int16、uint16 | 有符号和无符号的16位整数 |
int32、uint32 | 有符号和无符号的32位整数 |
int64、uint64 | 有符号和无符号的64位整数 |
float16 | 半精度浮数(16位) |
float32 | 半精度浮数(32位) |
float64 | 半精度浮数(64位) |
plex64 | 复数,分别用两个32位浮数表示实部和虚部 |
plex128 | 复数,分别用两个64位浮数表示实部和虚部 |
object | Python对象 |
string_ | 固定长度的字符串类型 |
unicode | 固定长度的unicode类型 |
每一个NumPy内置的数据类型都有一个特征码,它能标识一种数据类型,具体如表2所示。
表2NumPy内置特征码
特征码 | 含义 |
b | 布尔型 |
u | 无符号整型 |
c | 复数类型 |
S,a | 字节字符串 |
V | 原始数据 |
i | 有符号整型 |
f | 浮型 |
O | Python对象 |
U | unicode字符串 |
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论