Курс Python → Преобразование вложенного списка
Для того чтобы сделать список плоским, то есть преобразовать список, состоящий из вложенных списков, в один плоский список, можно воспользоваться следующим подходом. Начнем с создания функции, которая будет принимать в качестве аргумента вложенный список и возвращать плоский список. Например:
def flatten_list(nested_list):
flat_list = []
for item in nested_list:
if isinstance(item, list):
flat_list.extend(flatten_list(item))
else:
flat_list.append(item)
return flat_list
В данной функции используется рекурсивный подход: мы проходим по каждому элементу вложенного списка, и если элемент является списком, то вызываем функцию flatten_list для этого элемента и расширяем итоговый список. Если элемент не является списком, то просто добавляем его в итоговый список.
Пример использования функции:
nested_list = [1, 2, [3, 4, [5, 6]], 7, [8, [9]]]
flat_list = flatten_list(nested_list)
print(flat_list)
# Output: [1, 2, 3, 4, 5, 6, 7, 8, 9]
В данном примере в переменной nested_list содержится вложенный список, который мы передаем в функцию flatten_list. Результат работы функции сохраняем в переменной flat_list и выводим его на экран. Как видно, вложенный список был успешно преобразован в плоский список.
Другие уроки курса "Python"
- Вывод сложных структур данных с помощью pprint
- Оператор is в Python
- Получение текущей даты в Python
- Функции min(), max(), sum()
- Оператор деления для класса Rational
- Генерация ключей RSA
- Аннотации типов в Python
- Удаление символов новой строки в Python.
- Проверка существования переменной с оператором :=
- Эффективная конкатенация строк в Python
- Работа с deque из collections
- Создание лямбда-функций
- Справка по импортированным модулям
- Замеры производительности в Python
- Метаклассы в Python
- Работа с файлами в Python
- Игра Виселица на Python
- Работа с комбинациями в Python.
- Логирование с Logzero
- Метод join для объединения строк
- Библиотека Emoji: использование смайлов в Python
- Метод rename() для переименования файлов и каталогов
- Псевдонимы в Python
- Метод join() для объединения строк
- Concrete Paths — метод .with_suffix()
- Объединение списков в Python
- Работа с прокси в Python
- Замена элементов в списке с помощью генераторов списков
- Очистка данных в Python
- Создание коллекций из выражения-генератора
- Основы работы с базами данных в Python
- Расширение операции побитового «и» в Python
- Генераторы в Python
- Игра «Угадывание чисел»
- Срезы в Python
- Модуль subprocess: запуск внешних команд
- Управление контекстом с помощью декоратора contextmanager
- Форматирование строк в Python
- Абстракции словарей и множеств в Python
- Работа с географическими данными в Python
- Метод __float__ в Python
- Оптимизация сравнения в Python
- Многопоточность и асинхронное программирование в Python
- Python Ellipsis использование
- Изменения в обработке логических значений
- Установка и использование модуля Wikipedia















