python常用數據結構集合詳解
set集合
集合定義與使用
集合定義:
- –無序的唯一對象集合
- –用大括號{}包圍,對象相互之間使用逗號分隔
- –集合是動態的,可以隨時添加或刪除元素
- –集合是異構的,可以包含不同類型的數據
集合使用:創建
創建:
- –通過使用{}填充元素
- –通過構造方法set()
- –通過集合推導式
# 集合使用:創建 # 創建 # --通過使用{}填充元素 a = {1, 2, 3} print(type(a), a) # --通過構造方法set() b = set("1") print(type(b), b) c = [1, 2, 3, "happy"] d = set(c) print(type(d), d) # --通過集合推導式 e = {i for i in c} print(type(e), e) # --註意:不可傳空{}來定義集合,會得到字典類型 f = {} print(type(f))
集合使用:成員檢測
- in:判斷元素是否在集合中存在
- not in :判斷元素是否在集合中不存在
# 集合使用:成員檢測 # in:判斷元素是否在集合中存在 # not in :判斷元素是否在集合中不存在 a = {1, 2, 3, 4, 5} print(1 in a) print(6 in a) print(2 not in a) print(6 not in a)
集合常用方法
add()
add(item):將單個對象添加到集合中
入參:對象item
返回:None
# add() # add(item):將單個對象添加到集合中 # 入參:對象item # 返回:None a = {1, 2, 3} a.add(4) print(a)
update()
update(iterable)
批量添加來自可迭代對象中的所有元素
入參:可迭代對象tierable
返回:None
# update() # update(iterable) # 批量添加來自可迭代對象中的所有元素 # 入參:可迭代對象iterable # 返回:None a = {1, 2, 3} a.update("happy") print(a)
remove()
remove(item):從幾個中移除指定元素item
入參:指定元素值
返回:None
如果item不存在與集合中則會引發KeyError
# remove() # remove(item):從幾個中移除指定元素item # 入參:指定元素值 # 返回:None # 如果item不存在與集合中則會引發KeyError a = {1, 2, 3, 4} a.remove(1) print(a)
discard()
discard(item):從集合中移除指定對象item
入參:指定對象值
返回:None
元素item不存在沒印象,不會拋出KeyError錯誤
# discard() # discard(item):從集合中移除指定對象item # 入參:指定對象值 # 返回:None # 元素item不存在沒印象,不會拋出KeyError錯誤 a = {1, 2, 3, "happy"} a.discard(2) print(a)
pop()
pop():隨機從集合中移除並返回一個元素
入參:無
返回:被移除的元素
如果集合為空則會引發KeyError錯誤
# pop() # pop():隨機從集合中移除並返回一個元素 # 入參:無 # 返回:被移除的元素 # 如果集合為空則會引發KeyError錯誤 a = {1, 2, 3, 4, "happy"} print(a.pop()) print(a)
clear()
clear():清空集合,移除所有元素
入參:無
返回:None
# clear() # clear():清空集合,移除所有元素 # 入參:無 # 返回:None a = {1, 2, 3, "happy"} a.clear() print(a)
集合運算
交集運算
intersection()
操作符:&
# 交集運算 # intersection() # 操作符:& a = {1, 2, 3} b = {2, 3, 4} print(a.intersection(b)) print(a & b)
並集運算
union()
操作符:|
# 並集運算 # union() # 操作符:| a = {1, 2, 3} b = {2, 3, 4, 5} print(a.union(b)) print(a | b)
差集運算
difference()
操作符:–
# 差集運算 # difference() # 操作符:- a = {1, 2, 3, 4} b = {2, 3, 4, 5} print(a.difference(b)) print(a - b) print(b.difference(a)) print(b - a)
集合推導式
類似列表推導式,同時集合支持集合推導式
語法:{i for i in … if …}
# 集合推導式 # 類似列表推導式,同時集合支持集合推導式 # 語法:{i for i in ... if ...} a = {i for i in [1, 2, 3, 4] if i % 2 == 0} print(a)
到此這篇關於python常用數據結構集合詳解的文章就介紹到這瞭,更多相關python 集合內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- Python中set方法的使用教程詳解
- python數據類型的詳細分析(附示例代碼)
- python關於集合的知識案例詳解
- python 的集合類型詳解
- Python 一篇文章看懂Python集合與字典數據類型