比较两个列表并通过一些检查获得结果列表



我有两个列表a和b,我必须得到两个列表的结果,一个列表的元素在两者中,另一个列表中b的元素不存在a.我必须在python.output中编写代码,应该看起来像这样。

    a = ['product','shampoo','vivel','spark']
    b = ['random','product','shampoo','nothing']
    c = ['product','shampoo']
    d = ['random','nothing']

我需要一个有效的,因为我必须多次执行此操作谢谢,如果有任何不清楚的地方,请告诉我。

您可以使用集合操作,因为这本质上是您所追求的。

>>> a = ['product','shampoo','vivel','spark']
>>> b = ['random','product','shampoo','nothing']

列表c将是一组intersection的结果

>>> c = set(a).intersection(b)
>>> c
{'shampoo', 'product'}

该列表d将是一组difference来自ba的结果。

>>> d = set(b).difference(a)
>>> d
{'random', 'nothing'}

也有用于执行这些操作的集合的运算符

>>> set(a) & set(b)
{'shampoo', 'product'}
>>> set(b) - set(a)
{'random', 'nothing'}

执行此任务的有效方法包括使用 set -

a = ['product','shampoo','vivel','spark']
b = ['random','product','shampoo','nothing']
c = list(set(a) & set(b))
d = list(set(b) - set(a))
print(c)
print(d)

输出-

['product', 'shampoo']
['nothing', 'random']

相关内容

  • 没有找到相关文章