python numpy数组的索引和切片的操作方法
NumPy-简介
NumPy是一个Python包。它代表“NumericPython”。它是一个由多维数组对象和用于处理数组的例程集合组成的库。
Numeric,即NumPy的前身,是由JimHugunin开发的。也开发了另一个包Numarray,它拥有一些额外的功能。2005年,TravisOliphant通过将Numarray的功能集成到Numeric包中来创建NumPy包。这个开源项目有很多贡献者。
NumPy操作
使用NumPy,开发人员可以执行以下操作:
•数组的算数和逻辑运算。
•傅立叶变换和用于图形操作的例程。
•与线性代数有关的操作。NumPy拥有线性代数和随机数生成的内置函数。
numpy库多维数组的类型和列表的类型非常类似,同样有索引和切片功能:
索引:获取数组中特定位置元素的过程
切片:获取数组元素子集的过程
1.一维数组
#准备一个数组 arr1=np.array(np.arange(9)) arr1
array([0,1,2,3,4,5,6,7,8])
#索引 arr[-1]#8 arr1[arr1.size-2]#7 arr1[arr1.size-9]#0 #切片:[start:end:step] arr1[1:4]#左开右闭的区间 arr1[1:5:2]#array([1,3]) arr1[::-1]#反向取所有,-1变成了步长
2.二维数组
#准备一个二维数组 arr2=np.array([ np.arange(1,4), np.arange(5,8) ]) arr2 array([[1,2,3], [5,6,7]]) #索引 arr2[0][2]#3 arr2[0,2]#3 #切片 arr2[0,]#array([1,2,3]) arr2[0,::]#同上 arr2[0,0:3]#array([1,2])
3.多维数组
arr4=np.arange(1,25).reshape(2,3,4) arr4 array([[[1,2,3,4], [5,6,7,8], [9,10,11,12]], [[13,14,15,16], [17,18,19,20], [21,22,23,24]]]) arr4[1][2][2]#23 arr4[1,1,1]#18 arr3[1,1,]#array([17,18,19,20]) arr4[1,1,::]#同上 arr4[1,1,::-1]#array([20,19,18,17]) arr4[0,1:3] #array([[5,6,7,8], #[9,10,11,12]]) arr4[:1,1]#array([6,18]) b[1,:,2]#array([15,19,23]) b[1,...] #array([[13,14,15,16], #[17,18,19,20], #[21,22,23,24]]) b[0,::-1,-1]#array([12,8,4]) b[:,:,-1][::-1][:,-1]#array([24,12])
总结
以上所述是小编给大家介绍的pythonnumpy数组的索引和切片的操作方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!