之前用的比較多的Python數(shù)據(jù)類型是列表list和元祖tuple外构,最近真的是被集合圈粉了,在Python和redis的操作中都用到了,集合最大的特點(diǎn)時(shí)無序+不重復(fù)拐袜,下面簡(jiǎn)單說一下Python中集合set的常見用法冯凹。
- 構(gòu)造
s=set() #可以傳入列表作為參數(shù)谎亩,重復(fù)的元素只保留一份
- 元素添加
s.add('x') #只添加一項(xiàng)
s.update(l) #l為列表,一次添加多項(xiàng)
- 元素刪除
s.remove('h') #刪除一項(xiàng)
- 與列表相同的幾種用法
len(s) #返回集合的長(zhǎng)度
x (not) in s #成員測(cè)試
for x in s #遍歷
- 交并補(bǔ)——集合最鮮明的特色宇姚,返回值仍然是個(gè)集合
s1 & s2 #交集
s1 | s2 #并集
s1 - s2 # 在s1中出現(xiàn)匈庭,但未在s2中出現(xiàn)的元素
s1 ^ s2 #對(duì)稱差集, 不同時(shí)出現(xiàn)在s1 與 s2中的元素浑劳,相當(dāng)于( s1 | s2) - (s1 & s2)
- 集合s可以和列表l相互轉(zhuǎn)換
s = set(l) #列表轉(zhuǎn)化為集合
l = list(s) #集合轉(zhuǎn)化為列表