Курс Python → Создание матрицы в Python

В Python есть возможность использовать вложенные list comprehensions для создания матрицы, то есть списка списков. Это означает, что вы можете использовать list comprehension не только для создания простого списка, но и для создания списка, который содержит другие списки внутри себя. Такой подход часто используется при работе с матрицами, таблицами или другими структурами данных, где требуется хранить данные в виде двумерного массива.

Для создания вложенных list comprehensions вам нужно просто добавить еще один цикл внутрь уже существующего выражения. Таким образом, вы можете создать матрицу, указав два цикла — один для итерации по строкам, другой для итерации по столбцам. В результате получится список списков, где каждый внутренний список представляет собой строку матрицы.


matrix = [[i*j for j in range(1, 4)] for i in range(1, 4)]
print(matrix)

В приведенном примере мы создаем матрицу 3×3, где каждый элемент равен произведению индексов строки и столбца. При этом внешний цикл отвечает за итерацию по строкам (от 1 до 3), а внутренний цикл — по столбцам (от 1 до 3). Результатом выполнения этого кода будет следующая матрица:


[[1, 2, 3],
 [2, 4, 6],
 [3, 6, 9]]

Таким образом, использование вложенных list comprehensions позволяет компактно и элегантно создавать матрицы и другие структуры данных в Python, что упрощает работу с данными и улучшает читаемость кода. Помимо умножения элементов, вы можете использовать любые другие выражения и операции внутри вложенных list comprehensions для генерации нужной структуры данных.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Замена подстроки
  2. Замена символов в строке
  3. Вызов внешних программ в Python с помощью sh
  4. Регистрация на курсы SF Education
  5. Замер времени выполнения кода
  6. Работа со словарями Python
  7. Функции в одну строку
  8. Копирование словарей и списков в Python
  9. Иерархия классов в Python
  10. Генераторы в Python
  11. PUT запрос для обновления данных
  12. Функция enumerate в Python
  13. Добавление кнопки в tkinter
  14. Добавление вложенных списков
  15. Retrying в Python: повторные вызовы
  16. Списки в Python
  17. Декодирование строк в Python
  18. Поиск индексов в списке
  19. f-строки в формате строк
  20. Python Поверхностное Копирование
  21. Работа с парами ключ-значение
  22. Дефолтные параметры в Python
  23. Нахождение хеша для бесконечности и NaN в Python
  24. Лямбда-функции в Python
  25. Декораторы в Python
  26. JMESPath в Python
  27. Лямбда-функции для min/max
  28. Удаление ключа из словаря в Python
  29. Python Метод sleep() времени
  30. Асинхронное выполнение задач в процессах
  31. Ограничение итераций в Python
  32. Операции с массивами в NumPy
  33. Оператор continue в Python
  34. Срез списка в Python
  35. Проверка надежности пароля на Python
  36. Получение срезов итераторов
  37. Работа с итераторами в Python
  38. Выбор редактора кода.
  39. Класс Counter() для подсчета элементов
  40. Установка и использование pyshorteners
  41. Работа с NumPy.linalg
  42. Python Метод sleep() из time
  43. Метод __int__ в Python
  44. Синхронизация потоков с time.sleep()
  45. Анализ кода — Python
  46. List Comprehension Tutorial
  47. Объединение словарей в Python
  48. Функции min(), max(), sum()

Marketello читают маркетологи из крутых компаний