浅谈numpy数组中冒号和负号的含义
在实际使用numpy时,我们常常会使用numpy数组的-1维度和”:”用以调用numpy数组中的元素。也经常因为数组的维度而感到困惑。
总体来说,”:”用以表示当前维度的所有子模块
“-1”用以表示当前维度所有子模块最后一个,”负号用以表示从后往前数的元素”
测试代码
importnumpyasnp b=np.arange(start=0,stop=24,dtype=int) print('b.shape',b.shape) #b.shape(24,) b1=b.reshape((4,2,3)) print('thevalueofb1\n',b1) #thevalueofb1 #[[[012] #[345]] # #[[678] #[91011]] # #[[121314] #[151617]] # #[[181920] #[212223]]] print('b1[-1]\n',b1[-1]) #从最外层的维度分解出最后一个模块 #b1[-1] #[[181920] #[212223]] forainb1[-1]: print('s') #在这个模块中有两个小的模块,所以程序运行两次 #s #s print('b1[:-1]\n',b1[:-1]) #从最外层的模块中分解出除最后一个子模块后其余的模块 #b1[:-1] #[[[012] #[345]] # #[[678] #[91011]] # #[[121314] #[151617]]] fora1inb1[:-1]: print('s') #在这个模块中有三个小的模块,所以程序运行两次 #s #s #s print('b1[-1:]\n',b1[-1:]) #写在最后一个维度的":"没有实质性作用,此处表示的意思和b1[-1]相同 #b1[-1:] #[[[181920] #[212223]]] print('b1[:,-1]\n',b1[:,-1]) #表示取出最外层的所有维度后每一个子模块中选择最后一个子模块 #b1[:,-1] #[[345] #[91011] #[151617] #[212223]] print('b1[:,:,-1]\n',b1[:,:,-1]) #表示取最里层维度的最后一个元素重新组成新的元组 #b1[:,:,-1] #[[25] #[811] #[1417] #[2023]]
以上这篇浅谈numpy数组中冒号和负号的含义就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。