Python中集合類型(set)學(xué)習(xí)小結(jié)
更新時(shí)間:2015年01月28日 16:17:55 投稿:junjie
這篇文章主要介紹了Python中集合類型(set)學(xué)習(xí)小結(jié),本文講解了set的初始化、運(yùn)算操作、基本方法等內(nèi)容,需要的朋友可以參考下
set 是一個(gè)無序的元素集合,支持并、交、差及對(duì)稱差等數(shù)學(xué)運(yùn)算, 但由于 set 不記錄元素位置,因此不支持索引、分片等類序列的操作。
初始化
復(fù)制代碼 代碼如下:
s0 = set()
d0 = {}
s1 = {0}
s2 = {i % 2 for i in range(10)}
s = set('hi')
t = set(['h', 'e', 'l', 'l', 'o'])
print(s0, s1, s2, s, t, type(d0))
運(yùn)行結(jié)果:
復(fù)制代碼 代碼如下:
set() {0} {0, 1} {'i', 'h'} {'e', 'o', 'l', 'h'} <class 'dict'>
提示
1.s0、d0:使用 {} 只能創(chuàng)建空字典,創(chuàng)建空集必須用 set();
2.ss、sl:set 中的元素是 無序不重復(fù) 的,可以利用這個(gè)特點(diǎn)去除列表中的重復(fù)元素。
運(yùn)算操作
復(fù)制代碼 代碼如下:
print(s.intersection(t), s & t) # 交集
print(s.union(t), s | t) # 并集
print(s.difference(t), s - t) # 差集
print(s.symmetric_difference(t), s ^ t) # 對(duì)稱差集
print(s1.issubset(s2), s1 <= s2) # 子集
print(s1.issuperset(s2), s1 >= s2) # 包含
運(yùn)行結(jié)果:
復(fù)制代碼 代碼如下:
{'h'} {'h'}
{'l', 'h', 'i', 'o', 'e'} {'l', 'h', 'i', 'o', 'e'}
{'i'} {'i'}
{'i', 'l', 'o', 'e'} {'i', 'l', 'o', 'e'}
True True
False False
提示
1.非運(yùn)算符的方法接受任何可迭代對(duì)象作為參數(shù),如 s.update([0, 1]);
2.其他等價(jià)操作:s.update(t) 與 s |= t,s.intersection_update(t) 與 s &= t,s.difference_update(t) 與 s -= t,s.symmetric_difference_update(t) 與 s ^= t 等。
基本方法
復(fù)制代碼 代碼如下:
s = {0}
print(s, len(s)) # 獲取集合中的元素的總數(shù)
s.add("x") # 添加一個(gè)元素
print(s)
s.update([1,2,3]) # 添加多個(gè)元素
print(s, "x" in s) # 成員資格測(cè)試
s.remove("x") # 去掉一個(gè)元素
print(s, "x" not in s)
s.discard("x") # 如果集合存在指定元素,則刪除該元素
c = s.copy() # 復(fù)制集合
print(s, s.pop()) # 彈出集合中的一個(gè)不確定元素,如果原集合為空則引發(fā) KeyError
s.clear() # 刪除集合中的元素
print(s, c)
運(yùn)行結(jié)果:
復(fù)制代碼 代碼如下:
{0} 1
{0, 'x'}
{0, 'x', 1, 2, 3} True
{0, 1, 2, 3} True
{1, 2, 3} 0
set() {0, 1, 2, 3}
相關(guān)文章
Python first-order-model實(shí)現(xiàn)讓照片動(dòng)起來
本文將利用first-order-model實(shí)現(xiàn)讓照片動(dòng)起來,除了表情驅(qū)動(dòng)照片,還可以姿態(tài)遷移。文中的示例代碼講解詳細(xì),感興趣的可以嘗試一下2022-06-06python中利用await關(guān)鍵字如何等待Future對(duì)象完成詳解
為了簡(jiǎn)化并更好地標(biāo)識(shí)異步IO,從Python 3.5開始引入了新的語法async和await,可以讓coroutine的代碼更簡(jiǎn)潔易讀。下面這篇文章主要給大家介紹了關(guān)于python中利用await關(guān)鍵字如何等待Future對(duì)象完成的相關(guān)資料,需要的朋友可以參考下。2017-09-09使用python和Django完成博客數(shù)據(jù)庫的遷移方法
下面小編就為大家分享一篇使用python和Django完成博客數(shù)據(jù)庫的遷移方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-01-01使用Python實(shí)現(xiàn)嵌套繪圖并為條形圖添加自定義標(biāo)注
論文繪圖時(shí)經(jīng)常需要多圖嵌套,正好最近繪圖用到了,所以這篇文章主要為大家詳細(xì)介紹了如何使用Python實(shí)現(xiàn)嵌套繪圖并為條形圖添加自定義標(biāo)注,感興趣的可以了解下2024-02-02