Курс 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"
- Обработка StopIteration в Python
- Разрешение имен в Python
- Оператор is в Python
- inspect в Python: анализ кода
- ROT13 Шифр Цезаря в Python
- Enum в Python
- Работа с кортежами в Python
- Представление бесконечности в Python
- Перегрузка операторов в Python
- Работа с zip()
- Запрос пароля с помощью getpass
- Python UserString — создание подклассов строк
- Отладка регулярных выражений в Python
- Разделение строк в Python
- Работа с PosixPath() в Python
- Удаление ресурса в Python
- Retrying в Python: повторные вызовы
- Бесконечные списки в Python
- Преобразование чисел в Python
- capitalize() — изменение регистра первого символа строки
- Математические функции в Python
- Расчет времени выполнения программы
- Вывод сложных структур данных с помощью pprint
- Операция += для списков
- Участие в сообществе @selectel
- Работа с переменными в Python
- Переопределение метода __or__()
- Разделение строк в Python
- Проверка типа данных
- Использование модуля __future__
- Оператор Walrus: правильное использование
- Основные операции с библиотекой Numpy
- Метод join() для объединения элементов в строку.
- Работа с f-строками 2.0
- Получение списка файлов в директории с использованием os
- Удаление символов новой строки в Python.
- Создание и удаление объектов
- Поиск шаблона в начале строки
- Активация Matplotlib в Jupyter
- Переворот строки
- Пустой оператор pass в Python
- Декоратор Ajax required
- Использование функции product
- Списки: объединение, изменение
- Декораторы в Python















