Python - array 2D

A matriz bidimensional é uma matriz dentro de uma matriz. É uma série de matrizes. Neste tipo de array, a posição de um elemento de dados é referenciada por dois índices em vez de um. Portanto, ele representa uma tabela com linhas e colunas de dados. No exemplo abaixo de um array bidimensional, observe que cada elemento do array em si também é um array.

Considere o exemplo de registrar temperaturas 4 vezes ao dia, todos os dias. Algumas vezes, o instrumento de gravação pode estar com defeito e não conseguimos registrar os dados. Esses dados para 4 dias podem ser apresentados como uma matriz bidimensional como abaixo.

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

Os dados acima podem ser representados como uma matriz bidimensional conforme abaixo.

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

Acessando valores em uma matriz bidimensional

Os elementos de dados em duas matrizes dimensionais podem ser acessados ​​usando dois índices. Um índice se refere à matriz principal ou pai e outro índice se refere à posição do elemento de dados na matriz interna. Se mencionarmos apenas um índice, todo o array interno é impresso para essa posição de índice. O exemplo abaixo ilustra como isso funciona.

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])

Quando o código acima é executado, ele produz o seguinte resultado -

[11, 12, 5, 2]
10

Para imprimir todo o array bidimensional, podemos usar python for loop conforme mostrado abaixo. Usamos o fim da linha para imprimir os valores em linhas diferentes.

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()

Quando o código acima é executado, ele produz o seguinte resultado -

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

Inserindo Valores em Matriz Bidimensional

Podemos inserir novos elementos de dados em uma posição específica usando o método insert () e especificando o índice.

No exemplo abaixo, um novo elemento de dados é inserido na posição de índice 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()

Quando o código acima é executado, ele produz o seguinte resultado -

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

Atualizando Valores em Matriz Bidimensional

Podemos atualizar todo o array interno ou alguns elementos de dados específicos do array interno reatribuindo os valores usando o índice do array.

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()

Quando o código acima é executado, ele produz o seguinte resultado -

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

Excluindo os valores em uma matriz bidimensional

Podemos excluir toda a matriz interna ou alguns elementos de dados específicos da matriz interna reatribuindo os valores usando o método del () com índice. Mas caso você precise remover elementos de dados específicos em uma das matrizes internas, use o processo de atualização descrito acima.

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()

Quando o código acima é executado, ele produz o seguinte resultado -

11 12 5 2 
15 6 10 
10 8 12 5