列表(一维数组)切片
语法:
列表[开始索引:终止索引: 步长]
列表的切片赋值:
作用:
可以改变原列表,可以插入和删除数据,也可以改变数据
说明:
切片赋值的等号运算符的右侧必须是一个序列
语法:
列表[(开始索引):(终止索引)(:(步长))] = 序列
说明:
对于步长大于1的切片赋值,序列的个数要等于切出的段数
s[i:j] 表示获取a[i]到a[j-1]
s[:-1]去掉最后一个字符
s[:-n]去掉最后n个字符
s[-2:]取最后两个字符
s[i:j:k]这种格式呢,i,j与上面的一样,但k表示步长,默认为1
s[::-1]是从最后一个元素到第一个元素复制一遍(反向)
二维数组切片
X[:,0]取所有行的第0个数据,第二维下标位0的所有数据,第0列(从0开始)
X[:,1] 取所有行的第1个数据
X[:,1:]第一维全部取,即所有行,列上从第一列开始取,不要第0列
X[1,:]是取第1维中下标为1的元素的所有数据,第1行(从0开始)
X[:2,1:]第一维取下标2之前的,即第2行之前(0,1两行),列上从第一列开始取,不要第0列
三维数组切片
U[1,1,2]表示第一维取1,第二维取1,第三维取2
U[:,1,2]表示第一维全取,第二维取1,第三维取2
U[:,1:,2]表示第一维全取,第二维取1及1之后的所有值,第三维取2
U[:,1:,:2]表示第一维全取,第二维取1及1之后的所有值,第三维取2之前的值(0,1)
说明:
依此类推多维数组,逗号“,”分隔各个维度,“:”表示各个维度内的切片,只有:表示取这个维度的全部值