Python - tablica 2D

Tablica dwuwymiarowa to tablica w tablicy. Jest to tablica tablic. W tablicach tego typu pozycja elementu danych jest określana przez dwa indeksy zamiast jednego. Więc reprezentuje tabelę z wierszami i kolumnami danych. W poniższym przykładzie dwuwymiarowej tablicy, obserwator, że każdy element tablicy sam w sobie jest również tablicą.

Rozważmy przykład rejestracji temperatur 4 razy dziennie, każdego dnia. Czasami instrument nagrywający może być uszkodzony i nie możemy zarejestrować danych. Takie dane z 4 dni można przedstawić jako dwuwymiarową tablicę, jak poniżej.

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

Powyższe dane można przedstawić jako dwuwymiarową tablicę, jak poniżej.

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

Dostęp do wartości w dwuwymiarowej tablicy

Dostęp do elementów danych w dwuwymiarowych tablicach można uzyskać za pomocą dwóch indeksów. Jeden indeks odnoszący się do tablicy głównej lub nadrzędnej i inny indeks odnoszący się do pozycji elementu danych w tablicy wewnętrznej. Jeśli wspomnimy tylko o jednym indeksie, wówczas cała wewnętrzna tablica zostanie wydrukowana dla tej pozycji indeksu. Poniższy przykład ilustruje, jak to działa.

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

Wykonanie powyższego kodu daje następujący wynik -

[11, 12, 5, 2]
10

Aby wydrukować całą dwuwymiarową tablicę, możemy użyć pętli Python for, jak pokazano poniżej. Używamy końca wiersza, aby wydrukować wartości w różnych wierszach.

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

Wykonanie powyższego kodu daje następujący wynik -

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

Wstawianie wartości w dwuwymiarowej tablicy

Nowe elementy danych możemy wstawiać w określonej pozycji przy pomocy metody insert () i określając indeks.

W poniższym przykładzie nowy element danych jest wstawiany w pozycji indeksu 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()

Wykonanie powyższego kodu daje następujący wynik -

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

Aktualizowanie wartości w dwuwymiarowej tablicy

Możemy zaktualizować całą tablicę wewnętrzną lub niektóre określone elementy danych tablicy wewnętrznej, ponownie przypisując wartości za pomocą indeksu tablicy.

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

Wykonanie powyższego kodu daje następujący wynik -

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

Usuwanie wartości w dwuwymiarowej tablicy

Możemy usunąć całą tablicę wewnętrzną lub niektóre określone elementy danych z tablicy wewnętrznej, ponownie przypisując wartości za pomocą metody del () z indeksem. Jeśli jednak chcesz usunąć określone elementy danych w jednej z wewnętrznych tablic, użyj procesu aktualizacji opisanego powyżej.

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

Wykonanie powyższego kodu daje następujący wynik -

11 12 5 2 
15 6 10 
10 8 12 5