考试报名
考试报名
考试内容
考试大纲
在线客服
返回顶部

备考刷题,请到

CDA认证小程序

arr = np.array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]),下列操作结果一样的有( )(多选)
A. arr[8:1:-2]
B. arr[[8,6,4,2]]
C. arr[2:9:2]
D. arr[2:9:2][::-1]
上一题
下一题
收藏
点赞
评论
题目解析
题目评论(0)

要分析这些 Numpy 操作的结果是否相同,我们需要逐步解析每一个选项的切片或索引操作。

给定数组:

```python
arr = np.array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
```

让我们依次分析每个选项:

- **A: `arr[8:1:-2]`**

这个切片从索引 8 开始到索引 1,以步长 -2 反向进行。
- 索引 8 对应值为 8
- 索引 6 对应值为 6
- 索引 4 对应值为 4
- 索引 2 对应值为 2

结果:`[8, 6, 4, 2]`

- **B: `arr[[8,6,4,2]]`**

这里是通过显式索引访问元素。
- 索引 8 对应值为 8
- 索引 6 对应值为 6
- 索引 4 对应值为 4
- 索引 2 对应值为 2

结果:`[8, 6, 4, 2]`

- **C: `arr[2:9:2]`**

这个切片从索引 2 开始到索引 8(9 不包括),步长为 2。
- 索引 2 对应值为 2
- 索引 4 对应值为 4
- 索引 6 对应值为 6
- 索引 8 对应值为 8

结果:`[2, 4, 6, 8]`

- **D: `arr[2:9:2][::-1]`**

这里首先执行 `arr[2:9:2]`,如上所述,其结果为 `[2, 4, 6, 8]`。然后再对其进行逆序操作。
结果逆序为:`[8, 6, 4, 2]`

### 结论

选项 A、B 和 D 的结果都是 `[8, 6, 4, 2]`。因此,正确答案是:A, B, D。