在實際使用numpy時,我們常常會使用numpy數(shù)組的-1維度和”:”用以調(diào)用numpy數(shù)組中的元素。也經(jīng)常因為數(shù)組的維度而感到困惑。
總體來說,”:”用以表示當(dāng)前維度的所有子模塊
“-1”用以表示當(dāng)前維度所有子模塊最后一個,”負號用以表示從后往前數(shù)的元素”
測試代碼
import numpy as npb = np.arange(start=0, stop=24, dtype=int)print('b.shape', b.shape)# b.shape (24,)b1 = b.reshape((4, 2, 3))print('the value of b1/n', b1)# the value of b1# [[[ 0 1 2]# [ 3 4 5]]## [[ 6 7 8]# [ 9 10 11]]## [[12 13 14]# [15 16 17]]## [[18 19 20]# [21 22 23]]]print('b1[-1]/n', b1[-1])# 從最外層的維度分解出最后一個模塊# b1[-1]# [[18 19 20]# [21 22 23]]for a in b1[-1]: print('s')# 在這個模塊中有兩個小的模塊,所以程序運行兩次# s# sprint('b1[:-1]/n', b1[:-1])# 從最外層的模塊中分解出除最后一個子模塊后其余的模塊# b1[:-1]# [[[ 0 1 2]# [ 3 4 5]]## [[ 6 7 8]# [ 9 10 11]]## [[12 13 14]# [15 16 17]]]for a1 in b1[:-1]: print('s')# 在這個模塊中有三個小的模塊,所以程序運行兩次# s# s# sprint('b1[-1:]/n', b1[-1:])# 寫在最后一個維度的":"沒有實質(zhì)性作用,此處表示的意思和b1[-1]相同# b1[-1:]# [[[18 19 20]# [21 22 23]]]print('b1[:,-1]/n', b1[:, -1])# 表示取出最外層的所有維度后每一個子模塊中選擇最后一個子模塊# b1[:,-1]# [[ 3 4 5]# [ 9 10 11]# [15 16 17]# [21 22 23]]print('b1[:,:,-1]/n', b1[:, :, -1])# 表示取最里層維度的最后一個元素重新組成新的元組# b1[:,:,-1]# [[ 2 5]# [ 8 11]# [14 17]# [20 23]]以上這篇淺談numpy數(shù)組中冒號和負號的含義就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持武林站長站。
新聞熱點
疑難解答
圖片精選