Курс 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. Повторение элементов в Python
  2. Структуры данных в Python
  3. Отладка в Python
  4. Оптимизация методов в Python 3.7
  5. Аргументы *args и **kwargs
  6. Python и Юникод: работа с цифрами
  7. Открытие и запись файлов
  8. Виртуальные среды в Python
  9. Атрибуты класса и экземпляра
  10. Измерение времени выполнения кода
  11. Работа с GitHub в Telegram
  12. Обязательные аргументы в Python
  13. Условные выражения в Python
  14. Перегрузка операторов в Python
  15. Основы работы с базами данных в Python
  16. Генераторы списков
  17. JSON в Python: модуль, dump, dumps, load
  18. Поиск кода
  19. Блок try-except-else
  20. Объединение словарей в Python 3.5+
  21. Официальный канал Python в Telegram
  22. Преобразование генераторов в циклы
  23. Получение атрибутов и методов класса
  24. Ключевое слово global в Python
  25. Проверка строки на палиндром
  26. Определение функций с необязательными аргументами
  27. Создание Radio кнопок в tkinter
  28. Структурирование именованных констант
  29. Метод округления чисел
  30. Отладка в командной строке
  31. Подсказки типов в Python
  32. Документация функции help() в Python
  33. Перевод двоичного кода в целое число
  34. Работа с утверждениями в Python
  35. Многопоточность и асинхронное программирование в Python
  36. Работа с дробями в Python
  37. Получение списка кортежей из словаря
  38. Список методов и атрибутов
  39. Метод is_absolute() для PurePath
  40. Условное добавление элементов в список
  41. Избегание изменяемых аргументов
  42. Использование *args
  43. Конвертация коллекций в Python
  44. Использование эмодзи в Python
  45. Декораторы в Python
  46. Форматирование даты с strftime()

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