当前位置: 首页 > 文档资料 > Python 数据结构 >

2-D Array

优质
小牛编辑
129浏览
2023-12-01

二维数组是数组中的数组。 它是一个数组数组。 在这种类型的数组中,数据元素的位置由两个索引而不是一个索引引用。 因此它表示一个包含行和数据dcolumns的表。 在下面的二维数组示例中,观察者认为每个数组元素本身也是一个数组。

考虑每天记录4次温度的例子。 有时记录仪器可能有故障,我们无法记录数据。 4天的这种数据可以表示为如下的二维阵列。

Day 1 - 11 12 5 2 
Day 2 - 15 6 10 
Day 3 - 10 8 12 5 
Day 4 - 12 15 8 6 

上述数据可以表示为如下的二维阵列。

T = [[11, 12, 5, 2], [15, 6,10], [10, 8, 12, 5], [12,15,8,6]]

访问二维数组中的值

可以使用两个索引访问两个二维数组中的数据元素。 一个索引引用main或parent数组,另一个索引引用内部数组中数据元素的位置。 如果我们只提到一个索引,则为该索引位置打印整个内部数组。 下面的例子说明了它的工作原理。

from array import *
T = [[11, 12, 5, 2], [15, 6,10], [10, 8, 12, 5], [12,15,8,6]]
print(T[0])
print(T[1][2])

执行上述代码时,会产生以下结果 -

[11, 12, 5, 2]
10

要打印出整个二维数组,我们可以使用python for循环,如下所示。 我们使用行尾来打印不同行中的值。

from array import *
T = [[11, 12, 5, 2], [15, 6,10], [10, 8, 12, 5], [12,15,8,6]]
for r in T:
    for c in r:
        print(c,end = " ")
    print()

执行上述代码时,会产生以下结果 -

11 12 5 2 
15 6 10 
10 8 12 5 
12 15 8 6 

在二维数组中插入值

我们可以使用insert()方法并指定索引在特定位置插入新数据元素。

在下面的示例中,在索引位置2处插入新数据元素。

from array import *
T = [[11, 12, 5, 2], [15, 6,10], [10, 8, 12, 5], [12,15,8,6]]
T.insert(2, [0,5,11,13,6])
for r in T:
    for c in r:
        print(c,end = " ")
    print()

执行上述代码时,会产生以下结果 -

11 12 5 2 
15 6 10 
0 5 11 13 6 
10 8 12 5 
12 15 8 6 

更新二维数组中的值

我们可以通过使用数组索引重新分配值来更新整个内部数组或内部数组的某些特定数据元素。

from array import *
T = [[11, 12, 5, 2], [15, 6,10], [10, 8, 12, 5], [12,15,8,6]]
T[2] = [11,9]
T[0][3] = 7
for r in T:
    for c in r:
        print(c,end = " ")
    print()

执行上述代码时,会产生以下结果 -

11 12 5 7 
15 6 10 
11 9 
12 15 8 6 

删除二维数组中的值

我们可以通过使用带索引的del()方法重新分配值来删除整个内部数组或内部数组的某些特定数据元素。 但是,如果您需要删除其中一个内部数组中的特定数据元素,请使用上述更新过程。

from array import *
T = [[11, 12, 5, 2], [15, 6,10], [10, 8, 12, 5], [12,15,8,6]]
del T[3]
for r in T:
    for c in r:
        print(c,end = " ")
    print()

执行上述代码时,会产生以下结果 -

11 12 5 2 
15 6 10 
10 8 12 5