matrix[row][col]Oddiy ro'yxatda bitta indeks bilan element olamiz: list[i]. 2D ro'yxatda esa ikkita indeks kerak: avval qator (row), keyin ustun (col).
Sintaksis: matritsa[qator_indeksi][ustun_indeksi]
Muhim: indekslash har doim 0 dan boshlanadi.
matritsa = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] uchun:
| ustun 0 | ustun 1 | ustun 2 | |
|---|---|---|---|
| qator 0 | [0][0] = 1 | [0][1] = 2 | [0][2] = 3 |
| qator 1 | [1][0] = 4 | [1][1] = 5 | [1][2] = 6 |
| qator 2 | [2][0] = 7 | [2][1] = 8 | [2][2] = 9 |
Diagrammada ko'rganingizdek, har bir katak [qator][ustun] juftligi bilan aniqlanadi.
Amaliy misol:
matritsa = [
[1, 2, 3], # qator 0
[4, 5, 6], # qator 1
[7, 8, 9] # qator 2
]
print(matritsa[0][0]) # 1 — yuqori chap
print(matritsa[1][1]) # 5 — markaziy element
print(matritsa[2][2]) # 9 — quyi o'ngSinfxona o'tirishlar joyini aniqlash:
# Har bir qator — bir qator o'rindiqlar
# Har bir ustun — o'rindiq raqami
sinfxona = [
["Ali", "Vali", "Soli" ], # 1-qator (qator 0)
["Kamol", "Jamol", "Hamid"], # 2-qator (qator 1)
["Zafar", "Nozim", "Botir"] # 3-qator (qator 2)
]
# 1-qator, 2-o'rindiqda kim o'tiradi?
print(sinfxona[0][1]) # Vali
# 3-qator, 1-o'rindiqda kim o'tiradi?
print(sinfxona[2][0]) # Zafar
# 2-qator, 3-o'rindiqda kim o'tiradi?
print(sinfxona[1][2]) # HamidElementni o'zgartirish:
matritsa = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
]
# Markaziy elementni 0 ga o'zgartirish
matritsa[1][1] = 0
print(matritsa[1][1]) # 0
# Butun matritsani chiqarish
for qator in matritsa:
print(qator)
# [1, 2, 3]
# [4, 0, 6]
# [7, 8, 9]Muhim qoidalar:
matritsa[i][j] — i-qator (0 dan), j-ustun (0 dan)IndexError xatosi yuz beradimatritsa[i][j] = yangi_qiymatMatritsadan elementlarni o'qing
Quyidagi amallarni bajaring:
matrix[0][1])matrix[1][2])matrix[2][0])Bu mashq orqali siz:
matritsa[qator][ustun] sintaksisini mustahkamlaysiz