您当前的位置: 首页 >  Python

IT之一小佬

暂无认证

  • 0浏览

    0关注

    1192博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

python中将嵌套列表展开

IT之一小佬 发布时间:2022-04-01 16:33:19 ,浏览量:0

1. 直接简单的使用itertools库中的chain类进行操作

示例代码:

import itertools

lst = [[1, 2, 3, 4, 5], [6, 7, 8, 9, 0], [11, 22, 33]]

merge_list = list(itertools.chain.from_iterable(lst))
print(merge_list)

运行效果:

2. 使用列表推导式

示例代码:

import itertools

lst = [[1, 2, 3, 4, 5], [6, 7, 8, 9, 0], [11, 22, 33]]

merge_list = [j for i in lst for j in i]  # 先执行第一个for循环
print(merge_list)

运行效果:

 3. 使用递归函数

示例代码:

lst = [[1, 2, 3, 4, 5], [6, 7, 8, 9, 0], [11, 22, 33]]

merge_list = sum(lst, [])
print(merge_list)

结合递归原理进一步优化,示例代码:

lst = [[1, 2, 3, 4, 5], [6, 7, 8, 9, 0], [11, 22, 33]]


def merge_list(lst):
    return sum(([x] if not isinstance(x, list) else merge_list(x) for x in lst), [])


ans = merge_list(lst)
print(ans)

运行效果:

关注
打赏
1665675218
查看更多评论
立即登录/注册

微信扫码登录

0.0415s