Курс 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"
- Использование super() в Python
- Big O оптимизация
- Передача параметров в Python
- Извлечение данных из JSON
- Упрощение работы с JSON-данными в Python
- Методы split() и join() — Python строк.
- Объявление переменных в Python
- Блок else в циклах Python
- Генераторные функции в Python
- Передача аргументов в Python
- Преобразование данных в Python
- Установка и использование Python-dateutil
- Функция enumerate() в Python
- Преобразование генераторов в циклы
- Работа с argparse
- Декораторы с аргументами в Python
- Работа с Telegram API на Python
- Функция count() в Python
- Работа с библиотекой requests
- Измерение времени выполнения кода
- Считывание бинарного файла в Python
- Автоматизация действий с Pyautogui
- Модуль os: работа с файлами и папками
- Методы __repr__ и __str__ в Python
- Генератор данных в Keras
- Преобразование строки в число
- Создание виртуальной среды
- Метод enumerate() в Python
- Частичное совпадение пользовательского ввода в Python 3.10
- Python 3.12: переиспользование кавычек
- Генерация случайных чисел в Python
- Приоритет операций в Python
- Метод ne для сравнения объектов
- Создание комплексных чисел
- Логирование с Logzero
- Метод setitem в Python
- Принципы программирования
- Метаклассы в Python
- Работа с файлами в Python
- Измерение потребления памяти при сортировке
- Отладка утечек памяти в Python
- Сортировка в Python
- Явный импорт в Python
- Навыки Python: строки, типы данных
- Декораторы в Python
- Ключевое слово global в Python
- Управление браузером с Selenium
- Работа с комбинациями в Python.















