基本索引
Coddy NumPy 基础 课程的第 10 课,共 18 课。
Numpy 的一维数组可以像 Python 列表一样进行索引:
Python 列表索引:
lst = [1, 2, 3, 4]
lst[1] # --> 2Numpy 数组索引:
ary = np.array([1, 2, 3, 4])
ary[1] # --> 2但在维度更高时,情况就变得有趣了。
Python 二维列表索引:
lst = [[1, 2], [3, 4]]
lst[0][1] # --> 2Numpy 二维数组索引:
ary = np.array([[1, 2], [3, 4]])
ary[0,1] # --> 2 看看区别:ary[0,1]、lst[0][1]
我们可以在 Numpy 数组中使用与列表相同的语法:ary[0][1],但这种方式效率较低,最好使用:ary[0, 1]
ary[0][1]的效率较低,因为第一次索引后会创建一个新的临时数组,随后再通过索引 1 从中取值。
如何对三维数组进行索引?
ary = np.array([
[[1], [2]],
[[3], [4]]
])
ary[0, 0, 0] # --> 1
ary[0, 1, 0] # --> 2
ary[1, 0, 0] # --> 3
ary[1, 1, 0] # --> 4这节课包含一个小测验。开始学习即可作答,并记录你的进度。
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
挑战
简单从 3D 数组 ary 中检索包含值 5 的元素(使用索引)
亲手试试
import numpy as np
ary = np.array([ [ [ 0, 1 ], [ 2, 3 ] ], [ [ 4, 5 ], [ 6, 7 ] ] ])
res = ary[] # <-- Complete the indexing
print(res) # Don't touch
NumPy 基础中的所有课
自己练习: Python 在线编译器