Python - Use 'set' to find the different items in list Python - Use 'set' to find the different items in list python python

Python - Use 'set' to find the different items in list


The docs are a good place to start. Here are a couple examples that might help you determine how you want to compare your sets.

To find the intersection (items that are in both sets):

>>> a = set([1, 2, 3, 4, 5, 6])>>> b = set([4, 5, 6, 7, 8, 9])>>> a & bset([4, 5, 6])

To find the difference (items that only in one set):

>>> a = set([1, 2, 3, 4, 5, 6])>>> b = set([4, 5, 6, 7, 8, 9])>>> a - bset([1, 2, 3])>>> b - aset([7, 8, 9])

To find the symmetric difference (items that are in one or the other, but not both):

>>> a = set([1, 2, 3, 4, 5, 6])>>> b = set([4, 5, 6, 7, 8, 9])>>> a ^ bset([1, 2, 3, 7, 8, 9])

Hope that helps.


Looks like you need symmetric difference:

a = [1,2,3]b = [3,4,5]print(set(a)^set(b))>>> [1,2,4,5]


A simple list comprehension

In [1]: a=[1, 2, 3, 4, 5, 6] In [2]: b=[1, 2, 3, 4, 6]In [3]: [i for i in a if i not in b]Out[3]: [5]