Python 定义二维数组
1. 什么是二维数组?
在计算机科学中,二维数组是指具有两个维度的容器。它可以用于存储和操作表格形式的数据。也就是说,一个二维数组可以看作是若干个一维数组组成的数据结构。
在Python中,我们可以使用列表(List)来实现二维数组的功能,其中每个元素都是一个一维数组。下面详细介绍如何定义和操作二维数组。
2. 定义二维数组
2.1 使用列表初始化二维数组
在Python中,我们可以使用列表的列表来表示二维数组。例如,下面的代码定义了一个3行4列的二维数组:
matrix = [[0, 1, 2, 3],
[4, 5, 6, 7],
[8, 9, 10, 11]]
上述代码中,matrix
就是一个包含3个一维数组的列表,每个一维数组又包含4个元素。
我们可以通过下标访问二维数组中的元素。例如,要访问第2行第3列的元素,可以使用matrix[1][2]
。注意,下标从0开始计数。
2.2 使用列表推导式初始化二维数组
除了使用多重循环和append()
方法逐个添加元素外,我们还可以使用列表推导式来初始化二维数组。例如,下面的代码定义了一个4行5列的二维数组:
matrix = [[i + j for j in range(5)] for i in range(4)]
上述代码中,我们使用两个嵌套的列表推导式来生成二维数组。外层的列表推导式用于生成4个一维数组,内层的列表推导式用于生成每个一维数组的元素。其中i和j分别代表行和列的索引。
3. 操作二维数组
3.1 访问二维数组的元素
二维数组的元素可以通过下标进行访问。例如,要访问第3行第2列的元素,可以使用matrix[2][1]
。
3.2 修改二维数组的元素
二维数组中的元素是可以修改的。例如,要将第1行第0列的元素修改为100
,可以执行以下代码:
matrix[0][1] = 100
3.3 遍历二维数组
要遍历二维数组,我们可以使用嵌套的for
循环。下面的示例代码遍历并打印出一个3行4列的二维数组matrix
:
for row in matrix:
for element in row:
print(element, end=' ')
print()
运行结果如下:
0 1 2 3
4 5 6 7
8 9 10 11
上述代码中,外层的for
循环用于遍历每一行,内层的for
循环用于遍历每一行中的元素。print()
函数的end
参数用于指定打印结果的结尾字符,默认是换行符,这里我们将其设置为空格。
3.4 获取二维数组的行数和列数
要获取二维数组的行数和列数,可以使用len()
函数。例如,要获取二维数组matrix
的行数,可以使用len(matrix)
;要获取二维数组的列数,可以使用len(matrix[0])
。
4. 示例代码
下面的示例代码演示了如何定义和操作二维数组:
# 定义一个3行4列的二维数组
matrix = [[0, 1, 2, 3],
[4, 5, 6, 7],
[8, 9, 10, 11]]
# 访问二维数组的元素
print(matrix[1][2]) # 输出:6
# 修改二维数组的元素
matrix[0][1] = 100
print(matrix[0][1]) # 输出:100
# 遍历二维数组
for row in matrix:
for element in row:
print(element, end=' ')
print()
# 获取二维数组的行数和列数
print(len(matrix)) # 输出:3
print(len(matrix[0])) # 输出:4
运行上述代码,输出结果如下:
6
100
0 100 2 3
4 5 6 7
8 9 10 11
3
4
5. 总结
本文介绍了如何在Python中定义和操作二维数组。我们可以使用列表的列表来表示二维数组,通过下标可以访问和修改二维数组中的元素。同时,我们还讲解了如何遍历二维数组,并获取二维数组的行数和列数。