7. Двумерные массивы.

Онлайн-тренажер Python 3 для начинающих

Теория без воды. Задачи с автоматической проверкой. Подсказки на русском языке. Работает в любом современном браузере.

начать бесплатно

Самоучитель Python 3, собранный из материалов данного сайта. Предназначен в основном для тех, кто хочет изучить язык программирования Python с нуля.

Двумерные массивы в Python обычно представляют собой списки списков, где каждый вложенный список представляет собой строку или колонку данных. Двумерные массивы часто используются для представления матриц или таблиц. Рассмотрим создание, использование и основные операции с двумерными массивами.
 
Создание двумерных массивов
 
Создание статического двумерного массива
matrix = [
    [1, 2, 3],
    [4, 5, 6],
    [7, 8, 9]
]
 
Создание пустого двумерного массива
Создание пустого двумерного массива фиксированного размера.
rows, cols = 3, 3
matrix = [[0 for _ in range(cols)] for _ in range(rows)]
print(matrix)  # [[0, 0, 0], [0, 0, 0], [0, 0, 0]]
 
Инициализация двумерного массива с заданным значением
rows, cols = 3, 3
initial_value = 1
matrix = [[initial_value for _ in range(cols)] for _ in range(rows)]
print(matrix)  # [[1, 1, 1], [1, 1, 1], [1, 1, 1]]
 
Простой двумерный массив из строки
input_string = "1,2,3 4,5,6 7,8,9"

# Разделение строки на подстроки по пробелам
rows = input_string.split(' ')

# Разделение каждой подстроки по запятым и преобразование в целые числа
two_dimensional_array = [list(map(int, row.split(','))) for row in rows]

print(two_dimensional_array)  # Вывод: [[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[1][2] = 10
print(matrix)  # [[1, 2, 3], [4, 5, 10], [7, 8, 9]]
 
Итерация по двумерному массиву
 
Итерация по строкам
matrix = [
    [1, 2, 3],
    [4, 5, 6],
    [7, 8, 9]
]

for row in matrix:
    print(row)
 
Итерация по элементам
# Создание двумерного массива
two_dimensional_array = [
    [1, 2, 3],
    [4, 5, 6],
    [7, 8, 9]
]

# Итерация по двумерному массиву с использованием range
for i in range(len(two_dimensional_array)):
    for j in range(len(two_dimensional_array[i])):
        print(f"Элемент в позиции ({i}, {j}) равен {two_dimensional_array[i][j]}")

# Вывод будет следующим:
# Элемент в позиции (0, 0) равен 1
# Элемент в позиции (0, 1) равен 2
# Элемент в позиции (0, 2) равен 3
# Элемент в позиции (1, 0) равен 4
# Элемент в позиции (1, 1) равен 5
# Элемент в позиции (1, 2) равен 6
# Элемент в позиции (2, 0) равен 7
# Элемент в позиции (2, 1) равен 8
# Элемент в позиции (2, 2) равен 9
 
Основные операции с двумерными массивами
 
Транспонирование матрицы
matrix = [
    [1, 2, 3],
    [4, 5, 6],
    [7, 8, 9]
]

transposed = [[matrix[j][i] for j in range(len(matrix))] for i in range(len(matrix[0]))]
print(transposed)  # [[1, 4, 7], [2, 5, 8], [3, 6, 9]]
 
Поиск максимального и минимального элемента
matrix = [
    [1, 2, 3],
    [4, 5, 6],
    [7, 8, 9]
]

max_value = max(max(row) for row in matrix)
min_value = min(min(row) for row in matrix)
print(max_value)  # 9
print(min_value)  # 1
 
Сумма всех элементов
matrix = [
    [1, 2, 3],
    [4, 5, 6],
    [7, 8, 9]
]

total_sum = sum(sum(row) for row in matrix)
print(total_sum)  # 45
 
 
Генераторы двумерных массивов
 
Генерация матрицы
rows, cols = 3, 3
matrix = [[i * j for j in range(cols)] for i in range(rows)]
print(matrix)  # [[0, 0, 0], [0, 1, 2], [0, 2, 4]]
 
Генерация матрицы с условием
rows, cols = 3, 3
matrix = [[(i + j) % 2 for j in range(cols)] for i in range(rows)]
print(matrix)  # [[0, 1, 0], [1, 0, 1], [0, 1, 0]]
 
 

категории

ТЕОРИЯ

  • Введение в Python
  • Основы программирования на Python
  • Управляющие конструкции
  • Структуры данных
  • Функции и модули
  • Обработка исключений
  • Работа с файлами и потоками
  • файловая система
  • Объектно-ориентированное программирование (ООП)
  • Регулярные выражения
  • Дополнительные темы

Мы в соцсетях