如何从一个集合中移除另一个集合?

-1 投票
2 回答
2002 浏览
提问于 2025-04-17 16:56

我试着做了一些类似的事情

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

...
result = [1, 7]

但是没有成功

set1.remove(set2)

2 个回答

5

首先使用真正的集合:

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

或者,在 Python 2.7 或 3 中:

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

然后使用 .difference_update 方法

set1.difference_update(set2)

或者进行原地减法:

set1 -= set2

这样会直接修改 set1 的内容。如果你只是想查看差异,可以直接使用减法:

result = set1 - set2
11

其实比这简单多了

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

result = set1 - set2

撰写回答