You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Numpy中双冒号切片含义及二维数组赋值代码功能解读

关于Numpy中双冒号(::)切片及二维数组赋值代码的解释

双冒号(::)的含义

在Numpy的切片语法里,::是完整切片格式start:stop:step的简化写法,每个位置的参数省略时会使用默认值:

  • 省略start:默认从序列的起始位置(索引0)开始选取
  • 省略stop:默认选取到序列的末尾位置
  • 省略step:默认步长为1

举个简单例子:

  • arr[::2]:选取数组中所有索引为偶数的元素
  • arr[1::2]:选取数组中所有索引为奇数的元素
  • arr[3::]:从索引3开始选取到数组末尾的所有元素

二维数组代码的功能

当my_array是二维数组时,Numpy用[行切片, 列切片]的格式来定位元素,两行代码的功能如下:

  1. my_array[:, 0::2] = np.sin(A)

    • :表示选中所有行
    • 0::2表示选中从第0列开始、步长为2的所有列(即所有偶数列:第0、2、4...列)
    • 将这些选中区域的元素,赋值为数组A中对应元素的正弦值(要求A的形状必须和选中区域的形状完全匹配)
  2. my_array[:, 1::2] = np.cos(B)

    • :同样选中所有行
    • 1::2表示选中从第1列开始、步长为2的所有列(即所有奇数列:第1、3、5...列)
    • 将这些选中区域的元素,赋值为数组B中对应元素的余弦值(要求B的形状必须和选中区域的形状完全匹配)

内容的提问来源于stack exchange,提问作者marlon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 09:52:12