qq_42878458
kwokvk
采纳率0%
2021-03-01 15:38

python列表怎么按指定的规则填充?

list1=[['A','B'],['A','C','D'],['B','C']]
list2=['A','B','C','D']

不知道有没有描述清楚。。

要求是想让list1中的子列表按A B C D的顺序填充,即最后结果为list1=[['A','B',0,0],['A',0,'C','D'],[0,'B','C',0]]

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

3条回答

  • weixin_42521211 积跬步,慕至千里 1月前

     实现的方式应该挺多的,下例就是使用列表推导式,进行判断从而输出指定值。

    具体实现方式参考可参照如下代码:

    list1=[['A','B'],['A','C','D'],['B','C']]
    list2=['A','B','C','D']
    result = []
    for i in range(len(list1)):
        temp = [elem if elem in list1[i] else 0 for elem in list2  ]
        result.append(temp)
    print('实现结果:',result)

    点赞 1 评论 复制链接分享
  • muyashui Jack_Yang(数据分析及可视化) 26天前

    用了几个for循环

    list1=[['A','B'],['A','C','D'],['B','C']]
    list2=['A','B','C','D']
    
    
    lis= []
    for i in list1:
        lisi = []
        for j in list2:
            if j in i:
                lisi.append(j)
            else:
                lisi.append(0)
        lis.append(lisi)
    点赞 1 评论 复制链接分享
  • atom099 atom099 1月前

    十分感谢!!!还在学习中,很多不懂。。

    点赞 评论 复制链接分享