为什么会有Numpy库

学习深度学习的过程中,经常用到Numpy库,有必要了解一下Numpy库
在这里插入图片描述
Numpy最基本的数据对象是ndarray

ndarray:N维数组对象

ndarray是一个多维数组对象,由两部分组成:

 1. 实际的数据
 2. 描述这些数据的元数据(数据维度、数据类型)(告诉计算机这些数据的组织方式)
 每个维度中数据类型要相同,这两部分构成计算机能够理解的n维数据

python中已经有了列表类型,可以表示一维或多维数据,为什么需要额外的n维数组类型呢?

首先举一个例子:
在这里插入图片描述
不使用Numpy的话需要使用循环对数据进行处理,一个一个元素进行计算。
使用numpy进行计算时,没有使用循环,将两个一维数组整体当作一个数据,直接进行运算,编程时进行处理较为简单。
而且numpy的底层实现是由c语言完成的,使得大规模运算时较快。

问题:为什么需要Numpy?
结论:

  1. 数组对象可以去掉元素间运算所需的循环,使一维向量更像单个数据。
  2. 设置专门的数组对象,经过优化,可以提升这类应用的运算速度。(使用C或更底层的方法)
  3. 而且python中的列表中每个维度的数据类型可以不同,但是在科学计算中,一个维度所有数据的类型往往相同。ndarray数组对象采用相同的数据类型,有助于节省运算和存储空间。(对程序来说,当数据类型确定时,系统可以预判要使用多少存储空间,这样在内存分配时空间的利用率很高)
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MXG_ZZU

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值