Python Двовимірні масиви: приклади двовимірних списків

⚡ Розумний підсумок

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

  • 🧱 Структура: Двовимірний масив — це масив масивів у рядках і стовпцях.
  • 🔢 Індексація: Доступ до елемента здійснюється за допомогою масиву[рядок][стовпець]; індекси починаються з 0.
  • Вставити та оновити: Додайте рядки за допомогою insert() та змініть значення за індексом.
  • 🗑️ Видалити та змінити розмір: Видалити рядки за допомогою del та порахувати рядки за допомогою len().
  • 🔁 Ітерація: Використовуйте вкладені цикли for для переміщення по рядках і стовпцях.
  • 🧮 Варіант NumPy: Для важкої числової роботи створюйте справжні двовимірні масиви за допомогою numpy.array() для швидкості.

Python 2D-масив

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

Масив — це структура даних, яка використовується для зберігання елементів. Масив може зберігати лише подібні типи елементів. Двовимірність визначається як масив усередині масиву. Індекс масиву починається з 0 і закінчується розміром масиву мінус 1. Ми можемо створити 'n' кількість масивів у масиві.

Python 2D масиви

На зображенні вище ми бачимо, що індекс унікально ідентифікує кожен елемент масиву.

Як створити масив у Python?

Ми можемо створити двовимірний масив (список) із рядками та стовпцями.

синтаксис:

[[r1,r2,r3,..,rn],[c1,c2,c3,.......,cn]]

Де

r означає рядки, а c означає стовпці

приклад: Нижче наведено приклад створення

Двовимірний масив із 2 рядків і 4 стовпців

array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]
#display
print(array)

вихід:

[[23, 45, 43, 23, 45], [45, 67, 54, 32, 45], [89, 90, 87, 65, 44], [23, 45, 67, 32, 10]]

Доступ до значень

Ми можемо отримати доступ до значень за допомогою позиції індексу

синтаксис:

Ми можемо отримати значення рядка за допомогою [] оператор

array[row index]

Ми можемо отримати значення стовпця за допомогою [][]

Array[row index][column index]

де,

  • масив є вхідним масивом
  • індекс рядка – це позиція індексу рядка, яка починається з 0
  • індекс стовпця – це позиція індексу стовпця, яка починається з 0 у рядку.

приклад:

У цьому прикладі ми збираємося отримати доступ до значень за допомогою позицій індексу

#creare 2D array with 4 rows and 5 columns
array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]

#display
print(array)

#get the first row
print(array[0])

#get the third row
print(array[2])

#get the first row third element
print(array[0][2])

#get the third row forth element
print(array[2][3])

вихід:

[[23, 45, 43, 23, 45], [45, 67, 54, 32, 45], [89, 90, 87, 65, 44], [23, 45, 67, 32, 10]]
[23, 45, 43, 23, 45]
[89, 90, 87, 65, 44]
43
65

Ми також можемо отримати доступ до елементів за допомогою for loop

синтаксис:

for rows in the array:
  for columns in rows:
    print(columns)

де,

  • рядки використовуються для ітерації рядок за рядком
  • columns використовується для повторення значень, присутніх у кожному рядку.

приклад:

Creare 2D array with 4 rows and 5 columns
array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]

#use for loop to iterate the array
for rows in array:
 for columns in rows:
   print(columns,end=" ")
   print()

вихід:

23 45 43 23 45
45 67 54 32 45
89 90 87 65 44
23 45 67 32 10

Вставка значень у двовимірний масив

Тут ми збираємося вставити значення в двовимірний масив за допомогою функції insert().

Синтаксис:

array.insert(index,[values])

де,

  • масив є вхідним масивом
  • індекс - це позиція рядка для вставки певного рядка
  • значення – це значення, які потрібно вставити в масив

приклад: Вставити до значень у масиві

#Create 2D array with 4 rows and 5 columns
array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]

#insert the row at 5 th position
array.insert(2, [1,2,3,4,5])

#insert the row at 6 th position
array.insert(2, [1,2,3,4,5])

#insert the row at 7 th position
array.insert(2, [1,2,3,4,5])

#display
print(array)

вихід:

[[23, 45, 43, 23, 45], [45, 67, 54, 32, 45], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], [89, 90, 87, 65, 44], [23, 45, 67, 32, 10]]

Оновлення значень у двовимірному масиві

Ось два методи оновлення значень у 2-D масиві (списку).

Ви можете оновлювати рядки, використовуючи наведений нижче синтаксис

array[row_index]= [values]

Ви можете оновити значення стовпця всередині рядка, використовуючи наведений нижче синтаксис

array[row_index][column_index]= [values]

приклад:

#creare 2D array with 4 rows and 5 columns
array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]

#update row values in the 3rd row
array[2]=[0,3,5,6,7]

#update row values in the 5th row
array[2]=[0,3,5,6,7]

#update the first row , third column
array[0][2]=100

#update the second row , third column
array[1][2]=400

#display
print(array)

вихід:

[[23, 45, 100, 23, 45], [45, 67, 400, 32, 45], [0, 3, 5, 6, 7], [23, 45, 67, 32, 10]]

Видалення значень із двовимірного масиву

Ви можете видалити рядки за допомогою del функція

Синтаксис:

del array[index]

де,

  • масив є вхідним масивом
  • index посилається на індекс рядка

приклад:

#creare 2D array with 4 rows and 5 columns
array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]

#delete row values in the 3rd row
del array[2]

#delete row values in the 2nd row
del array[1]

#display
print(array)

вихід:

[[23, 45, 43, 23, 45], [23, 45, 67, 32, 10]]

Отримайте розмір двовимірного масиву

Ви можете отримати розмір двовимірного масиву за допомогою функції line(). Він поверне кількість рядків у масиві

синтаксис:

len(array)

приклад:

Отримайте довжину двовимірного масиву

#creare 2D array with 4 rows and 5 columns
array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]
#display
print(len(array))

вихід:

4

Важливий Python Методи масивів (списків)

Ось кілька важливих методів Array(list).

Метод Опис синтаксис Приклад
Append(): Цей метод допомагає нам додати елемент у кінець існуючого масиву. array.append(значення)
# Adding an element using append method to the end of an array array=[1,2,3] array.append(4) print(array)

вихід:

[1,2,3,4]
Очистити(): Цей метод допомагає нам видалити всі елементи, присутні в масиві array.clear()
# Removing all the elements from an array array=[1,2,3]
array.clear()

вихід:

[]
Копіювати(): Цей метод допомагає нам скопіювати вміст масиву в новий масив array1=array.copy()
#Copying the elements from an array to a new array array=[1,2,3] array1=[]
array1=array.copy()
  print(array1)

вихід:

[1,2,3]
Рахувати(): Цей метод допомагає нам підрахувати кількість входжень зазначеного елемента в масиві array.count(елемент)
#Counting the no of times an element is present in an array array=[1,2,3]
print(array.count(8))
 Output: 0
Розширити(): Цей метод допомагає нам розширити масив за межі його елементів. array.extend(array1)
#Extending an existing array with another array array=[1,2,3] array1=[4,5,6] array.extend(array1) print(array)
Output: [1,2,3,4,5,6]
Індекс(): Цей метод допомагає нам знайти індекс елемента в масиві array.index(елемент)
#returing the index an element in an array array=[1,2,3]
print(array.index(3))

вихід:

2
Вставити(): Цей метод допомагає нам вставляти елементи в масив за вказаним індексом. array.insert(індекс,елемент)
#Inserting an element at a specified index into an array array=[1,2,3]
array.insert(2,4)
  print(array)

вихід:

[1,2,4,3]
Поп(): Цей метод допомагає нам видалити елемент із вказаним індексом array.pop(індекс)
#Removing an element at specified index through pop method
array=[1,2,3]
array.pop(2)
  print(array)

вихід:

[1,2]
Видалити(): Цей метод допомагає нам видалити певний відповідний елемент у масиві. array.remove(елемент)
array=[1,2,3]
array.remove(2)
  print(array)

вихід:

[1,3]
Reverse(): Цей метод допомагає перевернути елементи в масиві. array.reverse()
array=[1,2,3,4]
array.reverse()
  print(array)

вихід:

[4,3,2,1]

Поширені запитання

In Python, двовимірний масив зазвичай реалізується як список списків, тому ці два терміни означають одне й те саме. Для швидкої числової роботи бібліотека NumPy пропонує спеціальний тип масиву true.

Імпортуйте NumPy, а потім передайте список списків до numpy.array(), наприклад, np.array([[1,2],[3,4]]). Масиви NumPy підтримують швидку поелементну математику, зрізи та решарку.ping що прості списки списків не можуть зробити ефективно.

Використовуйте списочне сприйняття, таке як [[0]*cols for _ in range(rows)]. Уникайте [[0]*cols]*rows, оскільки воно повторює одне й те саме внутрішнє посилання на список, тому редагування одного рядка випадково змінює всі рядки.

Використовуйте len(array) для кількості рядків та len(array[0]) для стовпців у першому рядку. У NumPy атрибут shape повертає обидва значення як кортеж (rows, columns).

Список зберігає змішані типи даних і знаходиться в розпорошеній пам'яті. Масив NumPy зберігає один тип даних у безперервній пам'яті, використовує менше місця та виконує числові операції набагато швидше, оскільки вони виконуються на C.

Використовуйте вкладені цикли for: зовнішній цикл перебирає кожен рядок, а внутрішній цикл перебирає стовпці всередині цього рядка. Це дозволяє зчитувати або оновлювати кожну позицію елемента.

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

Так. GitHub Copilot автоматично завершує створення, індексацію та обхід 2D-масивів з коментаря, а агентські інструменти можуть рефакторувати вкладені цикли або автоматично виявляти помилки, що відрізняються один від одного, у файлі.

Підсумуйте цей пост за допомогою: