20分钟
数组的索引
3.1 一维数组的索引
- 一维数组的索引和列表相同。假设
a1
是一维数组- 可以指定一个整数
i
作为索引下标,如a1[i]
- 可以指定一个整数
- 可以指定一个布尔数组作为数组下标,如
a1[b]
。此时将获得数组a1
中与数组b
中的True
对应的元素。新数组不和原始数组共享数据。- 布尔数组的形状与数组
a1
完全相同,它就是一个mask
- 布尔数组的形状与数组
- 如果是布尔列表,情况也相同
- 如果布尔数组的长度不够,则不够的部分作为`False`(该特性是`deprecating`,建议不要使用)

2. 上述介绍的一维数组的索引,既可以用于数组元素的选取,也可以用于数组元素的赋值
- 你可以赋一个值,此时该值会填充被选取出来的每一个位置
- 你可以赋值一个数组或者列表,此时数组或者列表的形状要跟你选取出来的位置的形状完全匹配(否则报出警告)
- 数组不同于列表。对于列表,你无法对列表切片赋一个值,而是要赋一个形状相同的值
学员评价