如何写python3展开列表的代码?

2025-12-01 0 76,044

很多知识点的使用是需要结合在一起,这就会出现一个代码中嵌套了好几个函数,虽然能够实现一些功能上的要求,但是在理解上会加深难度。不过本篇我们需要做的是,把复杂的嵌套展开成简单的列表,相信这个化繁为简的方法很多小伙伴都想学习了,其他的不多说,接下来我们就从python3展开列表的代码开始进行讲解。


展开列表

该方法将通过递归的方式将列表的嵌套展开为单个列表。

def spread(arg):
   ret = []
   for i in arg:
       if isinstance(i, list):
           ret.extend(i)
       else:
           ret.append(i)
   return ret

def deep_flatten(lst):
   result = []
   result.extend(
       spread(list(map(lambda x: deep_flatten(x) if type(x) == list else x, lst))))
   return result


deep_flatten([1, [2], [[3], 4], 5]) # [1,2,3,4,5]

 

拓展:列表的差

该方法将返回第一个列表的元素,其不在第二个列表内。如果同时要反馈第二个列表独有的元素,还需要加一set_b.difference(set_a)。

def difference(a, b):
   set_a = set(a)
   set_b = set(b)
   comparison = set_a.difference(set_b)
   return list(comparison)


difference([1,2,3], [1,2,4]) # [3]

 

看完之后的小伙伴,可以都动手试一下展开列表的方法,毕竟把繁琐的事情变简单还是很快乐的事情。同时也可以了解一下列表的差,之后的文章会有这方面的深入讲解。更多Python学习指路:PyThon学习网教学中心

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:以上部本文内容由互联网用户自发贡献,本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。投诉邮箱:3758217903@qq.com

ZhiUp资源网 python基础 如何写python3展开列表的代码? https://www.zhiup.top/3332.html

相关