標籤:返回 section nbsp union move on() abc 刪除 amp
集合:可變的資料類型,他裡面的元素是不可變的資料類型,無序,不重複
不可變是可雜湊
set1 = set({1,2,3})
set2 = {1,2,3,[2,3],{‘name‘:‘alex‘}} #集合元素不可變的 所以輸出錯誤
print(set1)
print(set2)
增:
1.#add
set1.add(‘alex‘)
2.#update
set1.update(‘abc‘) #迭代增加 把a b c分別增加
刪:
1.#pop
set.pop() #隨機刪除 有傳回值
print(set1)
2.#remove
set.remove(‘alex‘) #按元素
3.#clear 清空
set.clear()
4.#del 刪除整個集合
查:(只能for迴圈查)
for i in set1:
print(i)
交集:
set1 = {1,2,3,4,5}
set2 = {4,5,6,7,8}
set3 = set1&set2
print(set3)
print(set1.intersection(set2))
並集:
print(set1 | set2)
print(set2.union())
反交集:
set1 = {1,2,3,4,5}
set2 = {4,5,6,7,8}
print(set1^set2)
print(set1.symmetric_difference(set2))
差集:
set1 = {1,2,3,4,5}
set2 = {4,5,6,7,8}
print(set1-set2)# set1專屬的
print(set1.difference())
子集:
set1 = {1,2,3,4,5}
set2 = {4,5,6,7,8}
print(set1<set2)
print(set1.issubset())#返回布爾值
超集:
set1 = {1,2,3,4,5}
set2 = {4,5,6,7,8}
print(set1>set2)
print(set1.issuperset())#返回布爾值
print(set1.issubset())#返回布爾值
去重(面試題):
li = [1,2,33,33,2,1,4,5,6,6]
set1 =set(li)
li = list(set1)
print(li)
frozenset不可變集合,讓集合變成不可變集合:
s = frozenset(‘barry‘)
唯讀無序:
for i in s :
print(i)
python之集合