首页 > 编程知识 正文

Python遍历二维list

时间:2023-11-22 05:54:25 阅读:298302 作者:DQUK

在编程开发中,我们经常需要处理二维数据,而Python作为一门强大且易用的编程语言,提供了多种方式来遍历二维list。在本文中,我们将从多个方面详细阐述Python遍历二维list的方法。

一、按行遍历

按行遍历是最常见的方式之一,可以逐行访问二维list的每个元素。

matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]

for row in matrix:
    for num in row:
        print(num)

上述代码中,我们使用两个嵌套的循环来遍历二维list。外层循环遍历每一行,内层循环遍历每一行的元素。输出结果为:

1
2
3
4
5
6
7
8
9

二、按列遍历

除了按行遍历,我们还可以按列遍历二维list的元素。

matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]

for col in range(len(matrix[0])):
    for row in matrix:
        print(row[col])

上述代码中,我们使用两个嵌套的循环来遍历二维list。外层循环迭代列号,内层循环迭代每一行,通过索引获取对应列的元素。输出结果为:

1
4
7
2
5
8
3
6
9

三、索引访问

除了使用循环遍历,我们还可以通过索引直接访问二维list的元素。

matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]

for i in range(len(matrix)):
    for j in range(len(matrix[i])):
        print(matrix[i][j])

上述代码中,我们使用两个嵌套的循环来遍历二维list。外层循环迭代行号,内层循环迭代列号,通过索引访问二维list中的元素。输出结果与按行遍历相同。

四、使用列表推导式

Python提供了列表推导式的特性,可以简洁地实现对二维list的遍历。

matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]

nums = [num for row in matrix for num in row]
print(nums)

上述代码中,我们使用列表推导式将二维list展开为一维list。通过遍历每一行的元素,然后再遍历每个元素,将其加入新的list中。输出结果为:

[1, 2, 3, 4, 5, 6, 7, 8, 9]

五、使用numpy库

除了以上方法,如果需要处理大规模的二维数据,可以使用第三方库numpy,它提供了更高效的操作。

import numpy as np

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

for num in np.nditer(matrix):
    print(num)

上述代码中,我们将二维list转换为numpy的多维数组,然后使用np.nditer()函数进行迭代遍历。输出结果与按行遍历相同。

总结

本文介绍了Python遍历二维list的多种方法,包括按行遍历、按列遍历、索引访问、列表推导式和使用numpy库。根据实际需求选择合适的遍历方式,可以提高代码的效率和可读性。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。