python set詳解

時間複雜度:O(1)

set特點:
1.不允許重複元素
2.允許不同類型元素
3.所有元素必須是可哈希的(list、set、dict不可以,tuple可以)

set = {1,2,“hello”}

①:set1 = {1,1.0} 兩個值會被當作一個,常數地址是相同的

②:set1.add(“world”) 添加元素

③:set1.remove(“hello”) 刪除指定元素,若要刪除的元素不存在報錯
set1.discard(“hello”) 刪除指定元素,若要刪除的元素不存在不會報錯

④:set1.pop() 隨機刪除一個元素

⑤: set1.len(set1) 長度

set集合操作

set集合間操作並不會改變集合原結構,而是新生成一個集合

set1 = {“a”, “b”, “c”}
set2 = {“a”, “d”, “e”}

①:並集
set1.union(set2)
set1 | set2
輸出結果:{“a”, “b”, “c”,“d”, “e”}

②:交集
set1.intersection(set2)
set1 & set2
輸出結果:{“a”}

③:差集,從set2裏刪除在set1裏的元素
set2.difference(set1)
set2 - set1
輸出結果:{ “d”, “e”}

④:對稱差,並集-交集
set2.symeteric_difference(set1)
set2 ^ set1
輸出結果:{“b”, “c”,“d”, “e”}

應用場景:
set集合最常用於update操作,從數據庫中查出的集合是set1,最新的集合是set2,而直接先將所有舊的刪除,新的創建這種做法又不適合,所以先執行差集add = set2 - set1獲取需要添加的元素,添加到數據庫,再通過delete = set1 - set2獲取要從就集合中刪除的元素從數據庫刪除

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章