如何从集合中删除多个元素?

时间:2018-03-18 13:22:06

标签: python python-3.x set

说我有一套s = {1, 2, 3, 4, 5}。我是否可以在一个语句中从集合中删除子集{1, 2, 3}(而不是在循环中调用s.remove(elem))?

1 个答案:

答案 0 :(得分:10)

是的,您可以使用set.difference_update()方法(或-=运算符):

>>> s = {1, 2, 3, 4, 5}
>>> s.difference_update({1, 2, 3})
>>> s
{4, 5}
>>> s -= {4, 5}
>>> s
set()

请注意,difference_update()的非运算符版本将接受任何可迭代的作为参数。相反,它的基于运算符的对应物要求其参数为一组。