Python - 2D Dizi
İki boyutlu dizi, bir dizi içindeki dizidir. Bir dizi dizisidir. Bu tür dizide, bir veri elemanının konumu, bir yerine iki indeks tarafından belirtilir. Dolayısıyla, satırlar ve veri sütunları içeren bir tabloyu temsil eder. Aşağıdaki iki boyutlu dizi örneğinde, her dizi öğesinin kendisinin de bir dizi olduğunu gözlemleyin.
Her gün, günde 4 kez sıcaklık kaydetme örneğini düşünün. Bazen kayıt cihazı arızalı olabilir ve verileri kaydedemiyoruz. 4 günlük bu tür veriler aşağıdaki gibi iki boyutlu bir dizi olarak sunulabilir.
Day 1 - 11 12 5 2
Day 2 - 15 6 10
Day 3 - 10 8 12 5
Day 4 - 12 15 8 6
Yukarıdaki veriler aşağıdaki gibi iki boyutlu bir dizi olarak gösterilebilir.
T = [[11, 12, 5, 2], [15, 6,10], [10, 8, 12, 5], [12,15,8,6]]
İki Boyutlu Bir Dizide Değerlere Erişim
İki boyutlu dizideki veri öğelerine iki endeks kullanılarak erişilebilir. Ana veya üst diziye atıfta bulunan bir dizin ve iç dizideki veri öğesinin konumuna atıfta bulunan başka bir dizin. Yalnızca bir indeksten bahsedersek, iç dizinin tamamı o indeks konumu için yazdırılır. Aşağıdaki örnek nasıl çalıştığını göstermektedir.
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])
Yukarıdaki kod çalıştırıldığında, aşağıdaki sonucu verir -
[11, 12, 5, 2]
10
İki boyutlu dizinin tamamını yazdırmak için python for loop'u aşağıda gösterildiği gibi kullanabiliriz. Değerleri farklı satırlarda yazdırmak için satır sonunu kullanırız.
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()
Yukarıdaki kod çalıştırıldığında, aşağıdaki sonucu verir -
11 12 5 2
15 6 10
10 8 12 5
12 15 8 6
İki Boyutlu Diziye Değer Ekleme
İnsert () yöntemini kullanarak ve dizini belirterek belirli bir konuma yeni veri öğeleri ekleyebiliriz.
Aşağıdaki örnekte, dizin konumu 2'ye yeni bir veri öğesi eklenir.
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()
Yukarıdaki kod çalıştırıldığında, aşağıdaki sonucu verir -
11 12 5 2
15 6 10
0 5 11 13 6
10 8 12 5
12 15 8 6
İki Boyutlu Dizide Değerleri Güncelleme
Dizi indeksini kullanarak değerleri yeniden atayarak tüm iç diziyi veya iç dizinin bazı belirli veri öğelerini güncelleyebiliriz.
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()
Yukarıdaki kod çalıştırıldığında, aşağıdaki sonucu verir -
11 12 5 7
15 6 10
11 9
12 15 8 6
İki Boyutlu Dizideki Değerleri Silme
Dizin ile del () yöntemini kullanarak değerleri yeniden atayarak iç dizinin tamamını veya iç dizinin bazı belirli veri öğelerini silebiliriz. Ancak iç dizilerden birindeki belirli veri öğelerini kaldırmanız gerekirse, yukarıda açıklanan güncelleme işlemini kullanın.
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()
Yukarıdaki kod çalıştırıldığında, aşağıdaki sonucu verir -
11 12 5 2
15 6 10
10 8 12 5