一、如何遍历一维数组
在 Python 中,可以使用 for 循环对一维数组进行遍历。例如:
arr = [1, 2, 3, 4, 5] for i in arr: print(i)
此外,也可以使用 range() 函数和 len() 函数来遍历一维数组。例如:
arr = [1, 2, 3, 4, 5] for i in range(len(arr)): print(arr[i])
当然,使用 for 循环的方法更为简洁,推荐使用。
二、如何遍历二维数组
在 Python 中,可以使用嵌套的 for 循环对二维数组进行遍历。例如:
arr = [[1, 2], [3, 4], [5, 6]] for i in range(len(arr)): for j in range(len(arr[i])): print(arr[i][j])
此外,也可以使用 numpy 库的 nditer 函数对二维数组进行遍历。nditer 函数可以自动选择最快的方式进行遍历,比普通的嵌套循环更高效。例如:
import numpy as np arr = np.array([[1, 2], [3, 4], [5, 6]]) for i in np.nditer(arr): print(i)
三、如何在遍历数组时修改数组元素
在 Python 中,可以在遍历数组时直接修改数组元素,无需使用额外的变量。例如:
arr = [1, 2, 3, 4, 5] for i in range(len(arr)): arr[i] = arr[i] * 2 print(arr)
需要注意的是,如果在遍历数组时删除或添加元素,则可能会出现数组索引错误。此时可以倒序遍历数组,避免出错。例如:
arr = [1, 2, 3, 4, 5] for i in range(len(arr)-1, -1, -1): if arr[i] % 2 == 0: arr.pop(i) print(arr)
四、如何对多维数组进行条件筛选
在 Python 中,可以使用 numpy 库的 where 函数对多维数组进行条件筛选。例如:
import numpy as np arr = np.array([[1, 2], [3, 4], [5, 6]]) cond = arr > 3 print(arr[cond])
以上代码会输出数组中大于 3 的元素。
五、如何按行或列遍历数组
在 Python 中,可以使用 numpy 库的 transpose 函数对数组进行转置,然后按行或列遍历数组。例如:
import numpy as np arr = np.array([[1, 2], [3, 4], [5, 6]]) for row in arr: print(row) for col in arr.transpose(): print(col)
以上代码会先按行遍历数组,再按列遍历数组。