下面小编就为大家分享一篇对numpy中数组元素的统一赋值实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
Numpy中的数组整体处理赋值操作一直让我有点迷糊,很多时候理解的不深入。今天单独列写相关的知识点,进行总结一下。
先看两个代码片小例子:
例子1:
In [2]: arr =np.empty((8,4)) In [3]: arrOut[3]:array([[ 0., 0., 0., 0.], [ 0., 0., 0., 0.], [ 0., 0., 0., 0.], [ 0., 0., 0., 0.], [ 0., 0., 0., 0.], [ 0., 0., 0., 0.], [ 0., 0., 0., 0.], [ 0., 0., 0., 0.]]) In [4]: arr[1] = 1 In [5]: arrOut[5]:array([[ 0., 0., 0., 0.], [ 1., 1., 1., 1.], [ 0., 0., 0., 0.], [ 0., 0., 0., 0.], [ 0., 0., 0., 0.], [ 0., 0., 0., 0.], [ 0., 0., 0., 0.], [ 0., 0., 0., 0.]])
登录后复制
例子2:
In [6]: arr1 =np.empty(2)In [8]: arr1Out[8]:array([ 7.74860419e-304, 7.74860419e-304]) In [9]: arr1 = 0 In [10]: arr1Out[10]: 0
登录后复制
这两段看上去似乎出现了行为不一致,其实利用一般面向对象的标签理解模型还是能够理解的。
例子1中,加上了索引之后的标签其实指代的就是具体的存储区,而例子2中,直接使用了一个标签而已。那么这样如何实现对一个一维数组的全体赋值呢?其实只需要进行全部元素的索引即可,
具体方法实现如下:
In [11]: arr1 =np.empty(2) In [12]: arr1Out[12]: array([0., 0.]) In [13]: arr1[:]Out[13]: array([0., 0.]) In [14]: arr1[:] =0 In [15]: arr1Out[15]: array([0., 0.])
登录后复制
看起来似乎蛮简单,但是不做一下稍微深入一点的分析,理解起来确实是还有一点点难度。
相关推荐:
浅谈numpy数组的几种排序方式_python
numpy数组拼接简单示例_python
以上就是对numpy中数组元素的统一赋值实例的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2264927.html