1. 程式人生 > >Python集合的交,並,補,差補,等方法

Python集合的交,並,補,差補,等方法

Python集合的一些方法

剛學者寫部落格,記錄自己學習技術的點滴.----請多多關照

1.向集合中新增一個元素 s.add()

2.隨機刪除s.pop()    指定刪除s.remove() 與s.discard()   刪除不存在的remove會報錯 discard不會報錯

3.集合的交集& ,s.intersection()

4.集合的並集 | ,s. union()

5.集合的差集  s1.difference(s2) 將集合s1裡去掉和s2交集的部分

6.集合的交叉補集  s.symmetric_difference() 並集裡去掉交集的部分

 

1.向集合中新增一個元素 s.add()

# 向集合中新增一個元素
s={"mia","tute","hebut"}
s.add("yc")
print(s)#{'mia', 'tute', 'hebut', 'yc'}

2.隨機刪除s.pop()    指定刪除s.remove() 與s.discard()   刪除不存在的remove會報錯 discard不會報錯

#隨機刪除
s={"mia","tute",1,"hebut",3}
v=s.pop() #隨機刪除
print(s) #{3, 'mia', 'hebut', 'tute'} 刪除是隨機的
print(v) # tute 返回被刪除的那個值
# 指定刪除1 刪除不存在的會報錯
s={"mia","tute",1,"hebut",3}
s.remove("mia") #{1, 3, 'tute', 'hebut'} 指定刪除
s.remove("da") #KeyError: 'da' 刪除不存在的會報錯
print(s)

#指定刪除2 刪除不存在的不會報錯
s={"mia","tute",1,"hebut",3}
s.discard("tute") #{'mia', 1, 3, 'hebut'} 集合沒有順序
s.discard("da") #刪除不存在的不會報錯  
print(s)

3.集合的交集& ,s.intersection()

# 集合的交集  & ,s.intersection()
s1={"a","mia","hebut","tute"}
s2={"trtvc","hebut","yc","mia"}
s33=s1&s2               #{'hebut', 'mia'}  符號的方法
s44=s1.intersection(s2) #{'hebut', 'mia'}  函式的方法
print(s33)
print(s44)

4.集合的並集 | ,s. union()

# 集合的並集 | union
s1={"a","mia","hebut","tute"}
s2={"trtvc","hebut","yc","mia"}
s33=s1|s2 #{'trtvc', 'tute', 'hebut', 'mia', 'yc', 'a'}
s44=s1.union(s2) #{'tute', 'a', 'trtvc', 'yc', 'mia', 'hebut'}
print(s33)
print(s44)

5.集合的差集  s1.difference(s2) 將集合s1裡去掉和s2交集的部分

#集合的差集 s1.difference(s2) 將集合s1裡去掉和s2交集的部分
s1={"a","mia","hebut","tute"}
s2={"trtvc","hebut","yc","mia"}
s33=s1.difference(s2)#s33= {'tute', 'a'} 將集合s1裡去掉和s2交集的部分
s44=s2.difference(s1)#s44= {'trtvc', 'yc'} 將集合s2裡去掉和s1交集的部分
print("s33=",s33) 
print("s44=",s44)

6.集合的交叉補集  s.symmetric_difference() 並集裡去掉交集的部分

# 集合的交叉補集 s.symmetric_difference()  並集裡去掉交集的部分
s1={"a","mia","hebut","tute"}
s2={"trtvc","hebut","yc","mia"}
s=s1.symmetric_difference(s2) #{'yc', 'trtvc', 'a', 'tute'}  
print(s)