假设我有一套s = {1, 2, 3, 4, 5}
.我是否可以在一条语句中从集合中删除子集{1, 2, 3}
(而不是在循环中调用s.remove(elem)
)?
假设我有一套s = {1, 2, 3, 4, 5}
.我是否可以在一条语句中从集合中删除子集{1, 2, 3}
(而不是在循环中调用s.remove(elem)
)?
是的,您可以使用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()
的非运算符版本将接受any iterable作为参数.相反,基于运算符的对应项要求其参数为集合.