我有两张单子。
list_1 = [[1, 0, 0, 1], [0, 2, 0, 0]]
list_2 = [(1,'A'), (2,'B'), (3,'C'), (4,'D')]
我要生成一个新列表,列表3。
[[(1, 'A'), (4, 'D')], [(2, 'B'), (2, 'B')]]
我想用列表理解。
list_3 = [[list_2[index]*val for index, val in enumerate(elem) if val > 0] for elem in list_1]
但它产生了:
[[(1, 'A'), (4, 'D')], [(2, 'B', 2, 'B')]]
你可以看到,在第二项元组是解包的。如何保持元组?