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的對稱差集部分,去掉其他元素。