Освойте Python на курсе от Skypro. Вас ждут 400 часов обучения и практики (достаточно десяти часов в неделю), подготовка проектов для портфолио, индивидуальная проверка домашних заданий и помощь опытных наставников. Получится, даже если у вас нет опыта в IT.
Списки являются одной из ключевых структур данных в Python. В некоторых случаях, при работе со списками строк, может возникнуть необходимость удалить все пустые строки из списка.
Рассмотрим следующий пример:
str_list = ['Hello', '', 'World', '', 'Python', '', '']
В этом списке есть пустые строки, которые необходимо удалить.
Один из возможных подходов к решению этой задачи — использовать цикл while с проверкой на наличие пустой строки в списке и удалением ее при обнаружении. Этот подход, однако, не является самым эффективным и «питоновским».
Более «питоновский» и эффективный способ удаления пустых строк из списка — использование спискового включения (list comprehension).
str_list = ['Hello', '', 'World', '', 'Python', '', ''] str_list = [i for i in str_list if i]
В результате выполнения данного кода получим список без пустых строк:
['Hello', 'World', 'Python']
Списковое включение в данном случае создает новый список, который включает только те элементы изначального списка, которые не являются пустой строкой. Это происходит благодаря условию if i
, которое исключает из нового списка все пустые строки.
Следует заметить, что этот подход не меняет исходный список, а создает новый. Если необходимо изменить исходный список, можно присвоить результат спискового включения исходному списку, как это сделано в примере выше.
Изучайте Python на онлайн-курсе от Skypro «Python-разработчик». Программа рассчитана на новичков без опыта программирования и технического образования. Курс проходит в формате записанных коротких видеолекций. Будет много проверочных заданий и мастер-классов. В конце каждой недели — живая встреча с экспертами в разработке для ответов на вопросы и разбора домашек.
Добавить комментарий