一维数组的整数索引和切片(array[索引] ;array[起始索引:终止索引(不含):步长])

import numpy as np
arr = np.array([1,2,3,4,5,6,7,8,9])
arr[2]

arr[1:5]

arr[:8:2]

arr[::3]
二维数组的整数索引和切片(array[行索引,列索引] ;array[行索引起始值:行索引终止值:步长,列索引起始值:列索引终止值:步长])
1、获取二维数组的一行元素,则可以通过“数组[行索引]”的形式实现

arr2d = np.array([[1, 6, 11, 16, 21], [2, 7, 12, 17, 22],
[3, 8, 13, 18, 23], [4, 9, 14, 19, 24],
[5, 10, 15, 20, 25]])
arr2d
arr2d[2]
2、获取二维数组的单个元素,则需要通过“数组[行索引, 列索引]”的形式实现

arr2d[2,1]
3、如果希望获取二维数组的多行元素,则可以通过“数组[行索引的切片]”的形式实现

arr2d[:2]
4、如果希望获取二维数组的部分元素,则可以通过“数组[行索引的切片, 列索引的切片]”实现

arr2d[:2,:2]
5、混合使用切片与整数索引,通过这种方式访问二维数组的部分元素

arr2d[:,2]
花式索引

import numpy as np
arr = np.array([2,3,45,56,54,345,575])
arr[[0,2,3]]
arr2 = np.array([[1, 6, 11, 16, 21], [2, 7, 12, 17, 22],
[3, 8, 13, 18, 23], [4, 9, 14, 19, 24],
[5, 10, 15, 20, 25]])
arr2
arr2[[1,3]]
arr2[[1,2],[2,1]]
布尔索引

arr3 = np.array([[79,88,80],[89,90,92],[93,78,85],[78,76,80]])
arr3
arr3 > 80
arr3[arr3 > 80]
arr3[[True,False,True,False],:2]