Python集合(set)
python中有列表、元組、集合、字典這四種可以存放多個(gè)數(shù)據(jù)元素的集合,也是很常用的數(shù)據(jù)類型。
//?集合(set)定義
● set和dict類似,也是一組key的集合,但不存儲(chǔ)value
●? set的創(chuàng)建沒有特有的符號(hào),主要通過list,tuple,dict進(jìn)行創(chuàng)建
●無序且無重復(fù)元素的集合
●??set用{}花括號(hào)表示
s0?=?{1,2,3,4}
#通過{}符號(hào)創(chuàng)建集合
print(s0)
#{1,?2,?3,?4}
s1?=set([1,2,3,4])
#通過列表創(chuàng)建集合???????
print(s1)
#{1,?2,?3,?4}
s2?=set((1,2,3,4))
#通過元組創(chuàng)建集合
print(s2)
#{1,2,3,4}
s3?=set({'Name':'Tony','Age':?16,'sex':'Male'})
#通過字典創(chuàng)建集合
print(s3)
#{'Age',?'Name',?'sex'}?只返回key,不返回value
s4?=set([1,1,2,2,3,3])
#重復(fù)元素在set中自動(dòng)被過濾
print(s4)
#{1,?2,?3}
//?獲取集合長(zhǎng)度
●??len()函數(shù)可以獲得set集合的個(gè)數(shù)
s1?=set([1,2,3,4])
#通過列表創(chuàng)建集合???????
print(len(s1))
#結(jié)果為4
//添加集合元素
●? add()函數(shù)添加單個(gè)元素
s1?=set([1,2,3,4])
#通過列表創(chuàng)建集合
s1.add(5)
#添加一個(gè)元素5
print(s1)
#{1,?2,?3,?4,?5}
s1.add(1)
#添加一個(gè)已存在的元素1
print(s1)
#{1,?2,?3,?4,?5}
#由于集合無重復(fù)元素,所以該操作無效
●? update()函數(shù)添加元素,參數(shù)可以是列表,元組,字典等
s1?=set([1,2,3,4])
#通過列表創(chuàng)建集合
s1.update({5,6,7})
#添加元素5,6,7
print(s1)
#{1,?2,?3,?4,?5,?6,?7}
s1.update((8,9))
#添加元素8,9
print(s1)
#{1,?2,?3,?4,?5,?6,?7,?8,?9}
//? 移除集合元素
●? remove()函數(shù)移除元素
s1?=set([1,2,3,4])
#通過列表創(chuàng)建集合
s1.remove(4)
#移除一個(gè)元素4
print(s1)
#{1,?2,?3}
//清空集合
● clear()函數(shù)清空集合
s1?=set([1,2,3,4])
#通過列表創(chuàng)建集合
s1.clear()
#清空集合
print(s1)
#set()
小結(jié):
集合是一個(gè)無序無重復(fù)元素的集合,所以在集合內(nèi)增加存在的元素,操作是無效的。
集合在創(chuàng)建時(shí)可以用符號(hào){ }和set( ),但是如何要?jiǎng)?chuàng)建空集合只能用set( ),因?yàn)閧 }是來創(chuàng)建空字典的。?