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

Python array索引操作中使用双括号的必要性是什么

NumPy数组多索引赋值语法说明

这一语法是NumPy定义的整数数组索引规则,两层方括号的作用完全不同:

  • 最外层的[]是NumPy数组的默认索引操作符,所有对数组元素的读取、修改操作都需要通过这层符号触发。
  • 内层的[1,6,7]是传递给索引操作符的参数:一个存储了待选中下标的列表,用来一次性指定你需要修改的多个元素位置。

常见误区说明

如果你把代码写成a[1,6,7],NumPy会把三个数字识别为高维数组的分维度索引,等价于定位三维数组中「第一维下标1、第二维下标6、第三维下标7」的单个元素,和你要选中一维数组第1、6、7位元素的需求完全不符。只有把索引列表整体放在外层方括号内,NumPy才会识别为「多位置批量选取」逻辑。

你可以用这段测试代码验证效果:

import numpy as np
a = np.arange(10) # 生成长度为10的一维测试数组
a[[1,6,7]] = 10
print(a)
# 输出结果:array([ 0, 10,  2,  3,  4,  5, 10, 10,  8,  9])

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 04:03:01