Как легко сделать список списка плоским в Python?
Как сделать список списков плоским в Python
Обновлено 26 июня 2023
Иногда, работая с данными, вы можете столкнуться с ситуацией, когда данные представлены в виде списка вложенных списков. Одна из распространенных операций - плоская конвертация этого списка в одномерный список в Python. Плоская структура данных представляет собой преобразование многомерного списка, такого как матрица, в одномерный список.
Выборка из данных, плоская конвертация:
Хотим получить плоский список:
Как осуществить такую конвертацию? В этом уроке вы узнаете, как это сделать на языке Python.
Как сделать список списков плоским с помощью for
цикла
Как сделать список списков плоским в Python? Для этого можно выполнить следующие шаги явно или неявно:
- Создайте новый пустой список для получения плоских данных.
- Переберите каждый вложенный список или подсписок в исходном списке.
- Добавьте каждый элемент из текущего подсписка в список с плоскими данными.
- Верните результирующий список с плоскими данными.
Продолжим на примере matrix
. Вот как можно перевести эти шаги в код на Python с использованием цикла for
и метода .extend()
:
Внутри flatten_extend()
вы сначала создаете новый пустой список flat_list
. Вы будете использовать этот список для хранения данных, плоско извлеченных из matrix
. Затем вы начинаете цикл, чтобы перебирать внутренние списки из matrix
. В этом примере используется имя row
для представления текущего вложенного списка.
На каждой итерации вы используете .extend()
для добавления содержимого текущего подсписка в flat_list
. extend()
принимает итерируемый объект в качестве аргумента и добавляет его элементы в конец целевого списка.
Теперь запустите следующий код, чтобы проверить, что ваша функция выполняет свою задачу:
Вы должны получить ожидаемый результат:
Поздравляю! Вы успешно плоско преобразовали список списков с помощью цикла for
и метода .extend()
.