python I 嵌套列表的多种展开方法

python中,如何将嵌套列表展开形成一个列表。

一、嵌套列表格式

本文模拟的嵌套列表alis,如下:

alis = [['xx', 'yy'], [2], ['四', 4], ['99']]

嵌套列表alis,有以下特点:
1、嵌套列表alis,只有两层,格式为:[[]]。
2、第一层列表中的元素也全都是列表类型。

二、嵌套列表展开方法

(一)for循环

最容易想到的就是采用for循环进行展开。
利用for循环,结合列表本身的一些处理方法,可以有多种写法。
常见的3种写法如下:

(1)for循环+append()
alis = [['xx', 'yy'], [2], ['四', 4], ['99']]
blis = []
for lis in alis:
    if type(lis) == list:
        for i in lis:
            blis.append(i)
    else:
        blis.append(lis)
print('alis展开后:', blis)

alis展开后: [‘xx’, ‘yy’, 2, ‘四’, 4, ‘99’]

(2)for循环+python自加

原理:for循环相当于将嵌套列表变单层列表,自加相当于单层列表相加。

alis = [['xx', 'yy'], [2], ['四', 4], ['99']]
blis = []
for lis in alis:
    blis += lis
print("alis展开后:", blis)

alis展开后:[‘xx’, ‘yy’, 2, ‘四’, 4, ‘99’]

(3)for循环+extend()
alis = [['xx', 'yy'], [2], ['四', 4], ['99']]
blis = []
for lis in alis:
    blis.extend(lis)
print("alis展开后:", blis)

alis展开后:[‘xx’, ‘yy’, 2, ‘四’, 4, ‘99’]

(二)列表推导式

列表推导式,for循环的简洁版

alis = [['xx', 'yy'], [2], ['四', 4], ['99']]
blis = [i for k in alis for i in k]
print("alis展开后:", blis)

alis展开后:[‘xx’, ‘yy’, 2, ‘四’, 4, ‘99’]

(三)使用sum函数

使用方法:sum(嵌套列表,[])

alis = [['xx', 'yy'], [2], ['四', 4], ['99']]
blis = sum(alis, [])
print("alis展开后:", blis)

alis展开后:[‘xx’, ‘yy’, 2, ‘四’, 4, ‘99’]

以上嵌套列表的展开方法,主要是针对两层嵌套列表、且第二层均是列表的情况。
仅供参考。

-end-

  • 7
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一位代码

感谢您的支持!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值