📜  二维列表理解 python (1)

📅  最后修改于: 2023-12-03 15:06:20.219000             🧑  作者: Mango

二维列表理解 Python

概述

Python 中的二维列表是一种多维数据结构,用于存储具有二维结构的数据。它由若干个一维列表组成,每个一维列表都代表二维列表中的一行数据。在 Python 中,可以使用 list data type 来创建二维列表,其语法为:

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

以上代码创建了一个 3x3 的二维列表,其由三个一维列表构成,每个一维列表都包含三个整数。具体而言,该二维列表的内容如下:

1 2 3
4 5 6
7 8 9
访问

与一维列表类似,可以使用方括号索引访问二维列表中的数据。但需要注意的是,在访问二维列表时,需要同时指定行和列的索引。具体而言,二维列表的行索引从 0 开始,列索引也从 0 开始。例如,要访问第二行第三列的数据,可以使用以下语法:

matrix[1][2] # 6

其中, matrix[1] 返回二维列表的第二行(即 [4, 5, 6]),然后再用 [2] 访问该行的第三个元素。

遍历

遍历二维列表时,可以使用两层循环。外层循环遍历二维列表的每一行,内层循环遍历该行的每个元素。例如,遍历以上示例中的二维列表可以使用以下代码:

matrix = [ [1, 2, 3], [4, 5, 6], [7, 8, 9] ]
rows = len(matrix)
cols = len(matrix[0])

for i in range(rows):
  for j in range(cols):
    print(matrix[i][j], end=' ')
  print()

以上代码将输出以下内容:

1 2 3 
4 5 6 
7 8 9 
列表解析

列表解析是一种简化二维列表创建的方法。例如,可以使用列表解析创建一个 3x3 的全 0 二维列表,其语法为:

matrix = [[0 for i in range(3)] for j in range(3)]

以上代码将创建一个 3x3 的全 0 二维列表,其内容如下:

0 0 0 
0 0 0 
0 0 0 
示例

下面是一个二维列表相关的示例程序,该程序演示了如何创建、访问和遍历二维列表。

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

# 访问二维列表
print(matrix[1][2]) # 6

# 遍历二维列表
for row in matrix:
  for elem in row:
    print(elem, end=' ')
  print()

# 列表解析
zeros = [[0 for i in range(3)] for j in range(3)]
print(zeros)

以上代码将输出以下内容:

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

本文介绍了如何理解和使用 Python 中的二维列表,包括创建、访问、遍历和列表解析等相关知识点。通过掌握以上内容,你将能够更好地理解和使用 Python 中的二维列表。