与Python中的非唯一项交集

时间:2017-09-02 16:25:17

标签: python python-3.x

我有两个数组,我希望它们的交集包括重复的项目:

a = [0, 0, 1, 4, 5]
b = [0, 4, 6]


set(a) & set(b)
>>> [0, 4] #Result

如果我这样做,结果不包括重复元素

我想回复:

>>> [0, 0, 4]

想法?

2 个答案:

答案 0 :(得分:2)

假设只有a有重复项,您可以使用:

[i for i in a if i in b]

答案 1 :(得分:1)

设置操作仅适用于Python中的唯一元素。您可能希望对此

使用列表推导
Result = [element for element in a if element in b]