如何从另一个中删除一组?

时间:2013-02-24 11:07:18

标签: python set

set1 = [1, 3, 5, 7]
set2 = [3, 5]

...
result = [1, 7]

我正在尝试像

这样的东西
set1.remove(set2)

但它无效

2 个答案:

答案 0 :(得分:8)

比这更简单

set1 = set([1, 3, 5, 7])
set2 = set([3, 5])

result = set1 - set2

答案 1 :(得分:4)

首先使用实际集:

set1 = set([1, 3, 5, 7])
set2 = set([3, 5])

或者,在python 2.7或3中:

set1 = {1, 3, 5, 7}
set2 = {3, 5}

然后使用.difference_update method

set1.difference_update(set2)

或进行就地减法:

set1 -= set2

这会使set1变异。如果您只需要查看差异,只需使用减法:

result = set1 - set2