Numpy系统学习(二)Numpy的数据类型

2025-12-13 0 595

目录
1 基础数据类型
1.1第一种表示方式
2.2 第二种表示方式
2.1 组合生成自己的数据类型dtype(结构化数据类型)
1 基础数据类型
1.1第一种表示方式
名称 描述
bool_ 布尔型数据类型(True 或者 False)
int_ 默认的整数类型(类似于 C 语言中的 long,int32 或 int64)
intc 与 C 的 int 类型一样,一般是 int32 或 int 64
intp 用于索引的整数类型(类似于 C 的 ssize_t,一般情况下仍然是 int32 或 int64)
int8 字节(-128 to 127)
int16 整数(-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 个尾数位
float32 单精度浮点数,包括:1 个符号位,8 个指数位,23 个尾数位
float64 双精度浮点数,包括:1 个符号位,11 个指数位,52 个尾数位
complex_ complex128 类型的简写,即 128 位复数
complex64 复数,表示双 32 位浮点数(实数部分和虚数部分)
complex128 复数,表示双 64 位浮点数(实数部分和虚数部分)
2.2 第二种表示方式
实际使用中,我们可以通过一个唯一的字符串来代替上面的数据类型
字符 对应类型
b 布尔型
i (有符号) 整型
u 无符号整型 integer
f 浮点型
c 复数浮点型
m timedelta(时间间隔)
M datetime(日期时间)
O (Python) 对象
S, a (byte-)字符串
U Unicode
V 原始数据 (void)
如 int8 等价于‘i1’ int16等价于\’i2\’
我们可以发现,第一种表示方式的后面的数字代表“位”,第二种表示方式后面的数字表示“字节”
import numpy as np
# 创建一个整型数组
a1 = np.array([1, 2, 3], dtype=np.int32)
a2 = np.array([1, 2, 3], dtype=\”i4\”)

# 创建一个浮点型数组
b1= np.array([1.0, 2.0, 3.0], dtype=np.float64)
b2= np.array([1.0, 2.0, 3.0], dtype=\”f8\”)
# 创建一个布尔型数组
c1 = np.array([True, False, False], dtype=np.bool_)
c2 =np.array([True, False, False], dtype=\”b1\”)
# 输出数组的数据类型
print(a1.dtype) # int32
print(a2.dtype) # int32
print(b1.dtype) # float64
print(b2.dtype) # float64
print(c1.dtype) # bool
print(c2.dtype) # float64
\’
2.1 组合生成自己的数据类型dtype(结构化数据类型)
通过数据类型对象(dtype)来生成自己需要的数据类型,
dtype 对象是使用以下语法构造的:
numpy.dtype(object, align, copy)
object – 要转换为的数据类型对象
align – 如果为 true,填充字段使其类似 C 的结构体。
copy – 复制 dtype 对象 ,如果为 false,则是对内置数据类型对象的引用
例1:测试生成自己的数据类型dtype()
比如我想统计一下《复仇者联盟》中各个英雄的信息
第一个信息是英雄的名字 是字符串 20字节
第二个信息是英雄的技能 是字符串 20字节
第三个信息是英雄诞生日期 是整形8位 (1字节)
import numpy as np

hero=np.dtype([(\”name\”,\”S20\”),(\”skill\”,\”S20\”),(\”date\”,np.int8)])

\’\’\’

第一个信息是英雄的名字 是字符串 20字节
第二个信息是英雄的技能 是字符串 20字节
第三个信息是英雄诞生日期 是整形8位 (1字节)
\’\’\’
print(hero)
#用自定义数据类型创建实例对象
Spiderman=np.array([(\”Spiderman\”,\”tusi\”,8)],dtype=hero)
print(Spiderman)
#查看类型
print(Spiderman.dtype)
输出
[(\’name\’, \’S20\’), (\’skill\’, \’S20\’), (\’date\’, \’i1\’)]
[(b\’Spiderman\’, b\’tusi\’, 8)]
[(\’name\’, \’S20\’), (\’skill\’, \’S20\’), (\’date\’, \’i1\’)]

意味着我们生成了这样一个hero的数据类型。
原文链接:https://blog.csdn.net/Q52099999/article/details/128956327

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

申明:本文由第三方发布,内容仅代表作者观点,与本网站无关。对本文以及其中全部或者部分内容的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。本网发布或转载文章出于传递更多信息之目的,并不意味着赞同其观点或证实其描述,也不代表本网对其真实性负责。

左子网 编程相关 Numpy系统学习(二)Numpy的数据类型 https://www.zuozi.net/36703.html

常见问题
  • 1、自动:拍下后,点击(下载)链接即可下载;2、手动:拍下后,联系卖家发放即可或者联系官方找开发者发货。
查看详情
  • 1、源码默认交易周期:手动发货商品为1-3天,并且用户付款金额将会进入平台担保直到交易完成或者3-7天即可发放,如遇纠纷无限期延长收款金额直至纠纷解决或者退款!;
查看详情
  • 1、描述:源码描述(含标题)与实际源码不一致的(例:货不对板); 2、演示:有演示站时,与实际源码小于95%一致的(但描述中有”不保证完全一样、有变化的可能性”类似显著声明的除外); 3、发货:不发货可无理由退款; 4、安装:免费提供安装服务的源码但卖家不履行的; 5、收费:价格虚标,额外收取其他费用的(但描述中有显著声明或双方交易前有商定的除外); 6、其他:如质量方面的硬性常规问题BUG等。 注:经核实符合上述任一,均支持退款,但卖家予以积极解决问题则除外。
查看详情
  • 1、左子会对双方交易的过程及交易商品的快照进行永久存档,以确保交易的真实、有效、安全! 2、左子无法对如“永久包更新”、“永久技术支持”等类似交易之后的商家承诺做担保,请买家自行鉴别; 3、在源码同时有网站演示与图片演示,且站演与图演不一致时,默认按图演作为纠纷评判依据(特别声明或有商定除外); 4、在没有”无任何正当退款依据”的前提下,商品写有”一旦售出,概不支持退款”等类似的声明,视为无效声明; 5、在未拍下前,双方在QQ上所商定的交易内容,亦可成为纠纷评判依据(商定与描述冲突时,商定为准); 6、因聊天记录可作为纠纷评判依据,故双方联系时,只与对方在左子上所留的QQ、手机号沟通,以防对方不承认自我承诺。 7、虽然交易产生纠纷的几率很小,但一定要保留如聊天记录、手机短信等这样的重要信息,以防产生纠纷时便于左子介入快速处理。
查看详情

相关文章

猜你喜欢
发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务