NumPy中使用省略号进行切片的实现示例
NumPy中的省略号...用于简化多维数组的切片操作表示“所有未指定的轴”。当处理高维数组时可以避免显式写出多个连续的冒号:。语法规则省略号的使用规则如下...会自动扩展为多个:以匹配数组的维度。可以与其他切片符号如整数索引、普通切片start:stop:step混合使用。只能在一个切片中出现一次。示例演示示例1基本用法假设有一个3维数组12importnumpy as nparrnp.random.rand(2,3,4)# 形状为 (2, 3, 4)获取所有第一维和第二维的元素第三维取第0列1arr[...,0]# 等价于 arr[:, :, 0]输出形状为(2, 3)。获取所有第二维和第三维的元素第一维取第1个1arr[1, ...]# 等价于 arr[1, :, :]输出形状为(3, 4)。示例2更高维度对于4维数组arr np.random.rand(2, 3, 4, 5)取所有第三维和第四维的元素第一维和第二维取第0个1arr[0,0, ...]# 等价于 arr[0, 0, :, :]输出形状为(4, 5)。示例3混合使用取第一维全部第二维的第1到末尾第三维每隔2个取一个1arr[...,1::2]# 等价于 arr[:, :, 1::2]常见错误重复使用省略号arr[..., ...]会导致语法错误。维度不匹配若省略号扩展后的切片维度超过数组维度会报错。