對numpy中陣列元素的統一賦值例項

2022-10-04 10:06:12 字數 1368 閱讀 2528

numpy中的陣列整體處理賦值操作一直讓我有點迷糊,很多時候理解的不深入。今天單獨列寫相關的知識點進行總結一下。

先看兩個**片小例子:

例子1:

in [2]: arr =np.empty((8,4))

in [3]: arr

out[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]: arr

out[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]: arr1

out[8]:array([ 7.74860419e-304, 7.74860419www.cppcns.come-304])

in [9]: arr1 = 0

in [10]: arr1

out[10]: 0

這兩段看上去似乎出現了行為不一致,其實利用一般物件導向的標籤理解模型還是能夠理解的。

例子1中,加上了索引之後的標籤其實指代的就是具體的儲存區,而例子2中,直接使用了乙個標籤而已。那麼這樣如何實現對乙個一維陣列的全體賦值呢?其實只需要進行全部元素的索引即可,

具體方法實現如下:

in [11]: arr1 =np.empty(2)

in [12]: arr1

out[12]: array([0., 0.])

in [13]: arr1[:]

out[13]: array([0., 0.])

isfeixkbn [14]: arr1[:] =0

in [15]: arr1

out[15]: array([0., 0.])

看起來似乎蠻簡單,但是不做一下稍微深入一點的分析,理解起來確實是還有一點點難度。

本文標題: 對numpy中陣列元素的統一賦值例項

本文位址: /jiaoben/python/224437.html

numpy 獲取array中陣列元素的索引位置

原 numpy 獲取array中陣列元素的索引 2017年08月05日 10 36 59 1.函式原型 argwhere array 找到非空陣列array在滿足某些條件下的索引,返回索引陣列。2.應用 2.1 一維陣列 返回乙個一維陣列,代表當前滿足條件的元素出現的位置。python view p...

numpy建立陣列元素的獲取

import numpy as np arr np.array np.arange 12 reshape 3,4 print arr print arr 0 獲取二維陣列的第一行 print arr 1 獲取二維陣列的第二行 print arr 3 獲取二維陣列的前三行 print arr 0,2 ...

基於numpy中陣列元素的切片複製方法

程式設計客棧1 usr bin python import numpy as np arr1 np.arange 10 print arr1 slice datwww.cppcns.coma arr1 3 5 print slice data slicewww.cppcns.com data 0 1...