我在Python中有两个列表,如下所示:
temp1 = ['One', 'Two', 'Three', 'Four'] temp2 = ['One', 'Two']
我需要用第一个列表中的项目创建第二个列表,而第二个列表中没有这些项目。从示例中,我必须得到:
temp3 = ['Three', 'Four']
有没有循环和检查的快速方法吗?
In [5]: list(set(temp1) - set(temp2)) Out[5]: ['Four', 'Three']
当心
In [5]: set([1, 2]) - set([2, 3]) Out[5]: set([1])
你可能期望/希望它等于的位置set([1, 3])。如果你想set([1, 3])作为答案,则需要使用set([1, 2]).symmetric_difference(set([2, 3]))。
set([1, 3])
set([1, 2]).symmetric_difference(set([2, 3]))。