软件测试|Python科学计算神器numpy教程(七)


Numpy遍历数组

当处理大量数据时,Python中的NumPy(Numerical Python)库是一个非常强大和高效的工具。它提供了用于处理多维数组和执行数值计算的功能。在本文中,我们将探讨如何使用Python和NumPy库来遍历和操作NumPy数组。

环境与数据准备

首先,确保已经安装了NumPy库。可以使用以下命令在Python中安装NumPy:

pip install numpy

安装完成后,我们可以开始编写代码。

首先,我们需要导入NumPy库:

import numpy as np

接下来,我们可以创建一个NumPy数组:

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

现在,我们有一个形状为(3,3)的二维数组arr。让我们看看如何遍历和操作该数组。

遍历数组元素

要遍历NumPy数组的所有元素,我们可以使用嵌套的for循环。第一个循环用于迭代行,第二个循环用于迭代列。

for row in arr: 
    for elem in row: 
        print(elem) 
------------------- 
输出结果如下: 1 2 3 4 5 6 7 8 9

遍历数组行和列

如果我们需要分别遍历数组的行和列,可以使用NumPy库提供的函数。例如,要遍历数组的每一行,我们可以使用 nditer 函数:


  1. 按行输出数组


for row in np.nditer(arr): 
    print(row) 
--------------- 
输出结果如下: [1 2 3] [4 5 6] [7 8 9]


  1. 按列输出数组


要遍历数组的每一列,我们可以通过对数组进行转置来实现,代码如下:

for column in np.nditer(arr.T): 
    print(column) 
------------------------ 
输出结果如下: [1 4 7] [2 5 8] [3 6 9]

修改数组元素

除了遍历数组,我们还可以修改NumPy数组的元素。例如,假设我们想将数组中的每个元素都乘以2,我们可以使用索引访问数组的每个元素并进行修改:

for i in range(arr.shape[0]):
    for j in range(arr.shape[1]):
        arr[i][j] *= 2