删除所有空的嵌套列表 [英] Remove all empty nested lists
本文介绍了删除所有空的嵌套列表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何使用此列表:
list = [
[],
['', 'subitem'],
[[]],
'item',
[
'item',
'item',
[''],
[]
],
[]
]
我可以得到这个:
list = [
['subitem'],
'item',
[
'item',
'item'
]
]
如何递归删除所有空的嵌套列表,零字符串以及带有嵌套零字符串的列表?
How do I remove recursively all empty nested lists, zero-strings, and lists with nested zero-strings?
推荐答案
单线:
def remove_empty(l):
return tuple(filter(lambda x:not isinstance(x, (str, list, tuple)) or x, (remove_empty(x) if isinstance(x, (tuple, list)) else x for x in l)))
这篇关于删除所有空的嵌套列表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文