- 一维数组索引
import numpy as np
a = np.arange(10)
print(a)
# 索引访问 从0开始到长度-1
print('索引0处元素:', a[0])
# 最后一个元素
print('索引最后一个元素:', a[-1])
- 一维数组切片
# 切片 左闭右开 [start, stop, step]
print(a[:]) # [0 1 2 3 4 5 6 7 8 9]
print(a[3:]) # [3 4 5 6 7 8 9]
print(a[:8]) # [0 1 2 3 4 5 6 7]
print(a[1:8:2]) # [1 3 5 7]
# 负索引
print(a[::-1]) # [9 8 7 6 5 4 3 2 1 0]
print(a[-5:-1]) # [5 6 7 8]
- 二维数组索引
import numpy as np
x = np.arange(1, 13)
# 对一维数组进行修改形状四行三列(4,3)
x = x.reshape((4, 3))
print(x)
# 索引 第3行
print(x[2])
# 索引 第二行第三列
print(x[1][2])
# 负索引 最后一行
print(x[-1])
# 行倒序
print(x[::-1])
# 行列同时倒序
print(x[::-1, ::-1])
- 二维数组切片
# 切片使用【行切片,列切片】[start:stop:step, start:stop:step]
# 获取所有行和列
print(x[:, :])
# 获取所有行部分列 所有行第二列
print(x[:, 1])
# 所有行第一列第二列
print(x[:, 0:2])
# 同时获取第四行第一列,第三行第二列
print(x[3, 0], x[2, 1]) # 10 8
print(np.array([x[3, 0], x[2, 1]])) # [10 8]
# 使用坐标获取
print(x[(1, 2), (2, 0)])