Python Numpy学习笔记(2)——ndarray的基本数据类型


上篇文章 Python Numpy学习笔记(1)讲到了ndarray与list的区别,这篇文章就讲讲ndarray的 基本数据类型
个人能力有有限,只能写到这种程度, 毕竟不是专弄底层C语言的

基本数据类型

类型名类型表示符
布尔型bool_
有符号整数型int8(-127~128) / int16 / int32 / int64
无符号整数型uint8(0~255) / uint16 / uint32 / uint 64
浮点型float16 / float32 / float64
复数型complex64 / complex128
字串型str_,每个字节用32位Unicode编码表示

数据类型解释

要指定数据类型,设置 dtype 属性即可

ary = np.array([1,2,3,4,5,6],dtype='float32')

布尔型bool_(也可写成bool)

布尔型只有两个值TrueFalse
空字符串0None,转成布尔型后都是False
其他的为True

ary = np.array([0,'',None,'0','a',1,-1,0.1],dtype='bool')
print(ary)

输出为:

[False False False  True  True  True  True  True]

有符号整数型int

有符号整数型,就是存一个整数,这个整数的范围取决于位数
例如,int32,在计算机中用32位(4字节)储存,最高位是符号位
符号位为 0 是正数,用原码储存
1 ⇒ \Rightarrow 00000000 00000000 00000000 00000000
2147483647 ⇒ \Rightarrow 01111111 11111111 11111111 11111111
符号位为 1 则是负数,用补码储存
-1 ⇒ \Rightarrow 11111111 11111111 11111111 11111111
-2147483647 ⇒ \Rightarrow 10000000 00000000 00000000 00000001
关于int类型的 原码,反码,补码,这篇文章有介绍
int类型在计算机中的储存(原码、补码、反码)

储存范围

类型范围
int8-128 ~ 127
int16-32,768 ~ 32,767
int32-2,147,483,648 ~ 2,147,483,647
int64-9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807

注意

如果往int32中存 2147483648(正好比最大值多1)
那数字将会溢出,会变成 -2147483648

无符号整形uint

与int一样,只是不需要符号位

储存范围

类型范围
uint80 ~ 255
uint160 ~ 65,535
uint320 ~ 4,294,967,295
uint640 ~ 18,446,744,073,709,551,615

浮点数float

简单来说,就是存小数的
储存方式挺复杂的 这篇文章讲了个大概

复数complex

此地略

字串型str_(也可写成str)

字符的储存方式请参照这篇博客

类型字符码

在设置数据类型时时,可以使用类型字符码简写,更方便

类型字符码
np.bool_?
np.int8 / 16 / 32 / 64i1 / i2 / i4 / i8
np.uint8 / 16 / 32 / 64u1 / u2 / u4 / u8
np.float16 / 32 / 64f2 / f4 / f8
np.complex64 / 128c8 / c16
np.str_U
np.datetime64M8[Y] M8[M] M8[D] M8[h] M8[m] M8[s]

一个小广告

个人工作室: Sakuyark
网站:sakuyark.com

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值