浅谈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数组中冒号和负号的含义就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。