Python中的集合
Python中的集合
集合(set)是 無序的 、 不重復的 元素集合。
1,集合的創建
使用大括號 { } 或者 set() 函數創建集合。注意:創建一個空集合必須用 set() 而不是 { },因為 { } 是用來創建一個空字典。下面是例子:
set1 = {1, 2, 3} #創建一個包含1,2,3三個元素的集合 set2 = set(()) #創建空的集合必須用set(),使用set來創建集合時要注意這個雙括號 set3 = set(("a", 1, "b")) print(set1) #{1, 2, 3} print(set2) #set() print(set3) #{1, 'a', 'b'}注意:集合是 無序 的,因此你無法確定元素的顯示順序,所以你的運行結果可能和我不一樣,下面的所有例子也有可能和我不一樣。
2,集合的操作
2.1求集合的長度
求集合的長度可以使用 len() 方法,該方法很常用,len()還能求列表、元組的長度:
set4 = {1, 23, 'a', "sd"} print(len(set4)) #42.2判斷一個元素是否在集合中
可以使用 in 關鍵字判斷一個元素是否在集合中:
set5 = {1, 'd', "df", 3} print(1 in set5) #True print('a' in set5) #False2.3集合的運算
在集合中可以使用 - 、 | 、 & 、 ^ 來對集合進行運算:
a = set("abcd") b = set('defg') print(a) #{'d', 'a', 'b', 'c'} print(b) #{'e', 'g', 'f', 'd'}print(a - b) #{'c', 'b', 'a'} 包含在集合a中但不包含在集合b中的元素print(a | b) #{'c', 'd', 'a', 'e', 'b', 'f', 'g'} 集合a和集合b中的所有元素,由于集合中的元素不能重復,因此只有一個dprint(a & b) #{'d'} 既包含在集合a中,又包含在集合b中的元素print(a ^ b) #{'g', 'f', 'e', 'a', 'c', 'b'} 不同時包含在集合a和集合b中的元素2.4向集合中添加元素
如果只是將一個元素添加到集合中,使用 add() 方法,但需要注意的是,因為集合中的元素是不能重復的,所以,如果添加進集合的元素在集合中已經存在,則不會執行任何操作:
set7 = {'a', 1, 'b', 3} set7.add(2) #當要加進集合中的元素在集合中不存在時,能加入 print(set7) #{1, 2, 3, 'b', 'a'} set7.add('a') #當要加進集合中的元素在集合中已經存在時,不會執行任何操作 print(set7) #{1, 2, 3, 'b', 'a'}如果要將多個元素添加進集合中,則要使用 update() ,這個方法也能列表,元組,字典等加入集合中,如果要加入的元素有多個,使用 ,將其隔開:
set8 = set(('a', 'b'))set8.update('c', 'd') #一次將多個元素加入到集合中 print(set8) #{'d', 'a', 'c', 'b'}set8.update([100,200], [300, 500]) #將多個列表中的元素都加入到集合中 print(set8) #{'b', 100, 200, 300, 500, 'd', 'c', 'a'}set8.update((-1, -2), (-3, -4)) #將多個元組中的元素都加入到集合中 print(set8) #{'a', 100, 'b', 200, 300, 'd', 500, 'c', -2, -4, -3, -1}set8.update({'集', '合'}, {'加', '入'}) #將多個集合中的所有元素加入到集合中 print(set8) #{'合', 'b', 100, 'c', '集', 200, 'd', 300, 'a', '加', 500, -2, '入', -4, -3, -1}2.5刪除集合中的元素
想要刪除集合中的元素,可以使用 remove() 方法,但值得 注意 的是:用remove()方法移除集合中的元素在集合中不存在時,將發生錯誤。
因此,可以使用 discard() 方法,discard()方法在移除集合中不存在的元素時不會發生錯誤。
其實,還有一種可以刪除集合中的隨機元素的方法,它是 pop() ,為什么是隨機的呢?因為集合(set)的 pop 方法會對集合進行無序的排列,然后將這個無序排列集合的左邊第一個元素進行刪除。
set10 = {"ss", "sdf", "gd", "df"} print(set10.pop()) #df 執行結果可能和我不一樣,因為是隨機的 print(set10.pop()) #ss print(set10) #{3, 4}2.6清空集合
可以使用 clear() 方法來清空一個集合中的所有元素,即集合將變為一個空集合。當然,使用del可以將集合變量刪除。
set11 = {'a', 'b', 'c'} set11.clear() #使用clear()方法清空集合 print(set11) #set() set12 = {'a', 'b', 'c'} del set12 print(set12) #將發生錯誤,因為set12這個變量已經被刪除總結
以上是生活随笔為你收集整理的Python中的集合的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python元组介绍
- 下一篇: 夏普S2手机存储揭秘:内存卡无望,64G