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]]

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

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

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)

用了几个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)

 

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