Краткий ответ: Вы можете удалить все пустые списки из списка списков, используя оператор понимания списка [X для X в списке, если x] Чтобы отфильтровать список.
Далее вы узнаете о двух методах, использующих понимание списка и функцию фильтра () для удаления всех пустых списков из списка списков.
Но до этого не стесняйтесь играть с кодом самостоятельно:
Метод 1: Понимание списка
Как вы можете удалить все пустые списки из списка списков? Скажи, у вас есть список списков
[[1, 2, 3], [1, 2], [], [], [], [1, 2, 3, 4], [], []]
И вы хотите, чтобы все пустые списки удалены, чтобы получить список списков
[[1, 2, 3], [1, 2], [1, 2, 3, 4]]
.
Решение : Используйте Понимание списка [X для X в списке, если x]
Чтобы отфильтровать список и удалить все списки, которые пусты.
lst = [[1, 2, 3], [1, 2], [], [], [], [1, 2, 3, 4], [], []] print([x for x in lst if x]) # [[1, 2, 3], [1, 2], [1, 2, 3, 4]]
Условие, если х
оценивает Ложь
только если список х
пусто. Во всех остальных случаях он оценивает Правда
И элемент включен в новый список.
Вы можете визуализировать поток выполнения здесь, нажав кнопку «Далее»:
Метод 2: Фильтр ()
Альтернатива – использовать Фильтр ()
Функция для удаления всех пустых списков из списка списков:
lst = [[1, 2, 3], [1, 2], [], [], [], [1, 2, 3, 4], [], []] print(list(filter(lambda x: x, lst)))
Функция Filter () принимает два аргумента:
- Функция решения фильтра Чтобы проверить каждый элемент, следует ли включить его в отфильтрованную передачу (он возвращает логическое значение), а также
- ИТЕРИТЕЛЬНО быть отфильтрованным.
Как функция решения фильтра, вы используете функцию идентификации, которая просто передает список. Почему эта работа? Потому что только пустой список будет оцениваться в Ложь
Отказ Все остальные списки будут оцениваться до Правда
(И, таким образом, передайте тест фильтрации).
Статьи по Теме:
- Как отфильтровать список в Python?
- Фильтр VS Список понимания (скорость)
- Список понимания
- Списки списков
Куда пойти отсюда?
Достаточно теории, давайте познакомимся!
Чтобы стать успешным в кодировке, вам нужно выйти туда и решать реальные проблемы для реальных людей. Вот как вы можете легко стать шестифункциональным тренером. И вот как вы польские навыки, которые вам действительно нужны на практике. В конце концов, что такое использование теории обучения, что никто никогда не нуждается?
Практические проекты – это то, как вы обостряете вашу пилу в кодировке!
Вы хотите стать мастером кода, сосредоточившись на практических кодовых проектах, которые фактически зарабатывают вам деньги и решают проблемы для людей?
Затем станьте питоном независимым разработчиком! Это лучший способ приближения к задаче улучшения ваших навыков Python – даже если вы являетесь полным новичком.
Присоединяйтесь к моему бесплатным вебинаре «Как создать свой навык высокого дохода Python» и посмотреть, как я вырос на моем кодированном бизнесе в Интернете и как вы можете, слишком от комфорта вашего собственного дома.
Присоединяйтесь к свободному вебинару сейчас!
Работая в качестве исследователя в распределенных системах, доктор Кристиан Майер нашел свою любовь к учению студентов компьютерных наук.
Чтобы помочь студентам достичь более высоких уровней успеха Python, он основал сайт программирования образования Finxter.com Отказ Он автор популярной книги программирования Python One-listers (Nostarch 2020), Coauthor of Кофе-брейк Python Серия самооставленных книг, энтузиаста компьютерных наук, Фрилансера и владелец одного из лучших 10 крупнейших Питон блоги по всему миру.
Его страсти пишут, чтение и кодирование. Но его величайшая страсть состоит в том, чтобы служить стремлению кодер через Finxter и помогать им повысить свои навыки. Вы можете присоединиться к его бесплатной академии электронной почты здесь.