gpt4 book ai didi

python - Python 中所有 None 或 Empty 列表的清理列表或列表列表

转载 作者:太空宇宙 更新时间:2023-11-04 10:24:06 25 4
gpt4 key购买 nike

我想实现一个定义,该定义将从列表或列表的嵌套列表中删除所有 None 对象。

示例:

_list = [0,0,1,None,12, ""]

返回:

_result = [0,0,1,12,""]

或者如果输入是列表的嵌套列表:

示例:

_list = [[1,2,None],[2,3,None,2],[2,3,None,None,""],[None,None,None]]

返回:

_result = [[1,2],[2,3,2],[2,3,""]]

当然我不确定传入的结构是什么(列表的深度)或者其中一些是否包含所有 None 值(在那种情况下我也想删除空列表)。

我确实在这里看到了一些示例,但它们大多都是列表理解或迭代示例,没有一个可以处理更深层次的列表。所有帮助将不胜感激。我在 IronPython 2.7 中。

谢谢,

最佳答案

这个简单的递归函数将清除 None 的嵌套列表以及空列表(最初或由于删除 None):

def clear_list(l):
out = []
for ll in l:
if ll is None:
continue
if isinstance(ll, list):
ll = clear_list(ll)
if not ll:
continue
out.append(ll)
return out

关于python - Python 中所有 None 或 Empty 列表的清理列表或列表列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30488751/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com