В Python двумерный массив, также известный как матрица, представляет собой массив массивов. Инициализация двумерного массива включает в себя создание структуры, которая может содержать несколько строк и столбцов элементов. В этой статье блога мы рассмотрим несколько методов инициализации двумерного массива в Python, а также приведем примеры кода.
Метод 1: использование вложенного списка
Один из наиболее кратких способов инициализации двумерного массива — использование вложенного списка. Вот пример:
rows = 3
cols = 4
matrix = [[0 for _ in range(cols)] for _ in range(rows)]
print(matrix)
Выход:
[[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]
Метод 2: использование вложенных циклов
Другой подход заключается в инициализации двумерного массива с использованием вложенных циклов. Вот пример:
rows = 3
cols = 4
matrix = []
for i in range(rows):
row = []
for j in range(cols):
row.append(0)
matrix.append(row)
print(matrix)
Выход:
[[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]
Метод 3: использование библиотеки Numpy
Если вы работаете с числовыми данными, библиотека Numpy предоставляет удобный способ инициализации двумерного массива. Вот пример:
import numpy as np
rows = 3
cols = 4
matrix = np.zeros((rows, cols))
print(matrix)
Выход:
[[0. 0. 0. 0.]
[0. 0. 0. 0.]
[0. 0. 0. 0.]]
Метод 4: использование модуля Array
Модуль array в Python позволяет нам создавать массивы фиксированного типа. Вот пример инициализации 2D-массива с использованием модуля array:
import array
rows = 3
cols = 4
matrix = [[array.array('i', [0]) for _ in range(cols)] for _ in range(rows)]
print(matrix)
Выход:
[[array('i', [0]), array('i', [0]), array('i', [0]), array('i', [0])],
[array('i', [0]), array('i', [0]), array('i', [0]), array('i', [0])],
[array('i', [0]), array('i', [0]), array('i', [0]), array('i', [0])]]
Метод 5: использование функции NumPy full()
Библиотека NumPy также предоставляет функцию full()для инициализации двумерного массива определенным значением. Вот пример:
import numpy as np
rows = 3
cols = 4
value = 1
matrix = np.full((rows, cols), value)
print(matrix)
Выход:
[[1 1 1 1]
[1 1 1 1]
[1 1 1 1]]