过滤在两个列表的相应索引处具有相同值的元素

时间:2017-02-19 18:51:26

标签: python python-3.x

我有2个列表,我希望将每个项目与相关索引匹配。公式是什么?我已经使用了set但它没有考虑具体的索引。

list1 = [1 , 2 , 3, 5, 8]
list2 = [2 , 2 , 8, 5, 1]

out_put= [2 , 5]

2 个答案:

答案 0 :(得分:4)

您可以使用zip过滤两个列表的每个索引处的相同元素:

>>> list1 = [1 , 2 , 3, 5, 8]
>>> list2 = [2 , 2 , 8, 5, 1]
>>> [i for i, j in zip(list1, list2) if i==j]
[2, 5]

答案 1 :(得分:1)

使用zip函数:

res = [x[0] for x in zip(list1, list2) if x[0] == x[1]] # [2, 5]