Code Lingo

Урок 7: Двовимірний список (подвійний масив)

Що таке двовимірний список?

Двовимірний список (іноді його називають подвійним масивом) - це список, який містить інші списки. Це дозволяє зберігати дані у вигляді таблиці або матриці.

У Python двовимірний список створюється шляхом вкладення одного списку всередину іншого.

Приклад:

matrix = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
]
print(matrix)

Вивід:

[[1, 2, 3], [4, 5, 6], [7, 8, 9]]

У цьому прикладі ми створили двовимірний список з трьома рядками і трьома стовпцями. Кожен внутрішній список представляє рядок матриці.

Двовимірні списки дуже корисні для зберігання табличних даних, таких як координати, зображення або будь-які інші дані, які мають структуру рядків і стовпців.

Запам'ятай: в двовимірному списку може бути безмежна кількість рядків і стовпців.

Доступ до елементів

Для доступу до елементів двовимірного списку використовується дві індексні дужки: перша для рядка, друга для стовпця.

matrix = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
]
print(matrix[1][2])

Вивід:

6

Зміна елемента

Ви можете змінювати елементи двовимірного списку, звертаючись до них за індексами.

matrix = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
]
matrix[0][1] = 20
print(matrix)

Вивід:

[[1, 20, 3], [4, 5, 6], [7, 8, 9]]

У цьому прикладі ми змінили елемент у першому рядку і другому стовпці (індекси 0 і 1) на значення 20.

Перебір двовимірного списку

Для перебору всіх елементів двовимірного списку можна використовувати вкладені цикли for.

matrix = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
]
for row in matrix:
for element in row:
print(element)

Вивід :

1 2 3 4 5 6 7 8 9

Перебір за індексами

Також можна перебирати двовимірний список за індексами, використовуючи функцію range().

matrix = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
]
for i in range(len(matrix)):
for j in range(len(matrix[i])):
print(matrix[i][j])

Вивід :

1 2 3 4 5 6 7 8 9

Довжина двовимірного списку

Функція len() повертає кількість рядків у двовимірному списку. Щоб отримати кількість стовпців, можна використовувати len() для одного з внутрішніх списків.

matrix = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
]
print(len(matrix)) # Кількість рядків
print(len(matrix[0])) # Кількість стовпців

Вивід :

3 3