gpt4 book ai didi

python - 用列表和项目展平列表 : List comprehension with nested for loops and if else condition

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

我想展平列表和项目的列表。以下代码仅适用于列表列表

def flatten(li):
return [item for sublist in li for item in sublist]

它会在

[[1],[2,3],[4]]

但不是

[[1],[2,3],[4],5]

我想要一个可以为上面的列表做的函数——比如

[item if isinstance(sublist, list) else sublist for sublist in li
for item in sublist]

以上代码报错

试穿

[[1],[2,3],[4],5]

给我

TypeError: 'int' object is not iterable

谁能给我一个没有的列表理解?

编辑:

我只想要一个列表综合。

最佳答案

def flatten(li):

return [ x for x in li if isinstance(x,int) ] + [item for sublist in li if isinstance(sublist,list) for item in sublist]

关于python - 用列表和项目展平列表 : List comprehension with nested for loops and if else condition,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38900235/

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