Python的set(集合)是一个无序的不重复元素序列。基本的set运算包括:
- 添加元素:add(x),将元素x添加到集合中,如果元素已存在,则不会进行任何操作。
- 删除元素:remove(x),从集合中移除元素x,如果元素不存在,则会引发KeyError。另外一个方法是discard(x),同样是移除元素x,但如果元素不存在,不会引发错误。
- 遍历集合:可以使用for循环来遍历集合中的所有元素。
- 判断元素是否在集合中:可以使用in关键字来判断一个元素是否在集合中,例如"x in s",其中s是一个集合。
- 集合的并集:set1.union(set2)或set1 | set2,返回两个集合的并集。
- 集合的交集:set1.intersection(set2)或set1 & set2,返回两个集合的交集。
- 集合的差集:set1.difference(set2)或set1 - set2,返回两个集合的差集,即在set1中存在且在set2中不存在的元素。
- 集合的对称差集:set1.symmetric_difference(set2)或set1 ^ set2,返回两个集合的对称差集,即只在set1或set2中存在的元素。
- 判断子集和超集:set1.issubset(set2)或set1 <= set2,判断set1是否是set2的子集;set1.issuperset(set2)或set1 >= set2,判断set1是否是set2的超集。
- 更新集合:set1.update(set2)或set1 |= set2,将set2中的元素添加到set1中,可能会导致set1的元素增加。
- 交集更新:set1.intersection_update(set2)或set1 &= set2,保留set1和set2的交集部分,去掉其他元素。
- 差集更新:set1.difference_update(set2)或set1 -= set2,去掉set1中在set2中存在的元素。
- 对称差集更新:set1.symmetric_difference_update(set2)或set1 ^= set2,保留set1和set2的对称差集部分,去掉其他元素。