Python資料型別之set相關常用操作
#set:集合去重(無序的)
list_1 = set([1,4,5,7,3,6,7,9]) #結果{1, 3, 4, 5, 6, 7, 9}
list_2 = set([2,6,0,66,22,8,4]) #結果{0, 2, 66, 4, 6, 8, 22}
list_3 = set([1,3,7])
ist_6 = set([1,5,6,8,7])
#交集\並集\差集\子集\父集\對稱差集:使用"符號"代替單詞
#交集".intersection" or "&" 取2個列表的重複值
print(list_1.intersection(list_2))
print(list_1 & list_2)
#並集".union" or "|" 取兩個列表合併以後去重
print(list_1.union(list_2))
print(list_1 | list_2)
#差集".difference" or "-" #取列表1有的而列表2沒有 or 列表2有而列表1沒有的值
print(list_1.difference(list_2)) #取列表1值,該值列表2沒有
print(list_1 - list_2)
print(list_2.difference(list_1))#取列表2值,該值列表1沒有
print(list_2 - list_1)
#子集".issubset" or "<=" 判斷list3是否是list_1的子集(list_3元素都存在list_1,list3就是list1的子集
print(list_3.issubset(list_1))
print(list_3 <= list_1)
#父集".issuperset" or ">=" 判斷list_1是否是list_3
print(list_1 >= list_3)
#對稱差集(.symmetric_difference) 合併兩個列表,重複的值去掉(重複值不存在)
print(list_1.symmetric_difference(list_2))
print(list_2 ^ list_1)
#集合的追加刪除判斷
#新增
list_6.add(999)
list_6.update([888,777,555])
#x in a 判斷x是否是a的成員
print( 1 in list_1) #list_1有1該數字 所以1是list_1成員 返回true
#x not in a 判斷x是否不是a的成員
print( 10000 not in list_1) #list_1沒有10000該數字 所以返回true
#隨機刪除一個
print(list_6.pop()) #刪除任意一個
#刪除
list_6.remove(5)
list_6.discartd"(5)