Курс 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"
- Функция __init__ в Python
- Сортировка данных в Python
- Оболочка Python
- Подсчет вхождений элементов
- Создание таблиц в терминале с PrettyTable
- Antigravity модуль
- Методы обработки строк в Python
- Порядок и длина множеств в Python
- Лямбда-функции в Python
- Поиск наиболее частого элемента в списке
- Проверка версии Python
- Разделение строки на подстроки в Python
- Сравнение def и lambda в Python
- Работа с изменяемыми коллекциями
- Установка и использование модуля «howdoi»
- Зарезервированные слова в Python
- Работа с датой и временем в Python
- Разделение строки с помощью re.split()
- Работа с Path в Python
- Метод ne для сравнения объектов
- Функция sleep() в Python
- Генерация чисел с range()
- Работа с базами данных SQLite
- Счетчик ссылок в Python
- Динамическая типизация в Python
- Работа с модулем glob в Python
- Логирование с Loguru
- Упрощенный вывод данных в Python
- Избегайте пустого списка
- Проверка файла .py на синтаксис.
- Непрерывная проверка в Python
- Работа с множествами в Python
- Получение ID текущего процесса
- Фильтрация списка чисел
- Цикл for с enumerate() в Python
- Присвоение и ссылки
- Работа с collections в Python.
- Установка и использование модуля Wikipedia
- split() без разделителя
- Печать календаря
- Конкатенация строк в Python
- Получение пути к текущему скрипту с помощью os
- Явный импорт переменных
- Основы Python
- Работа с zip()
- Использование defaultdict в Python
- Настройка вывода в Numpy
- Работа со словарями в Python















