1. 程式人生 > >python之路-08-集合

python之路-08-集合

1.2 rem 宋體 添加 symmetric super bsp 是否 alt

集合是一個無序的,不重復的數據組合,它的主要作用如下:

  • 去重,把一個列表變成集合,就自動去重了
  • 關系測試,測試兩組數據之前的交集、差集、並集等關系

8.1集合操作

8.1.1常用操作

#!Author:lanhan
list_1 = [1,4,5,7,3,6,7,9]
list_1 = set(list_1)
print(list_1,type(list_1))
list_2 = set([2,6,0,66,22,8,4])
print(list_1,list_2)
list_3 = set([1,3,7])
#交集
print("交集",list_1.intersection(list_2))
print(list_1 & list_2)
#並集(去掉相同的)


print("並集",list_1.union(list_2))
print(list_2 | list_1)
#差集(在list_1裏有的,在list_2裏沒有的)
print("差集",list_1.difference(list_2))
print(list_1 -list_2)
print("差集",list_2.difference(list_1))
print(list_2 -list_1)
#子集()
print("子集",list_3.issubset(list_1))
#父集()
print("父集",list_1.issuperset(list_3))
#對稱差集(相互沒有的)
print("對稱差集"
,list_1.symmetric_difference(list_2))
print(list_1 ^ list_2)
###m沒有交集則返回true
list_4 = set([5,6,8])
print("沒有交集則返回真",list_3.isdisjoint(list_4))

技術分享圖片

技術分享圖片

8.1.2基本操作

#!Author:lanhan
#添加1項
list_4 = set([1,3,7])
list_4.add(‘110‘)
print(list_4)
#添加多項
list_4.update([120,130])
print(list_4)
#使用remove()可以刪除一項
list_4.remove(7)
print(list_4)
#刪除,如果沒有值,不報錯


print(list_4.discard("ddd"))
#set 的長度
print(len(list_4))
#測試1是否是list_4的成員
print(1 in (list_4))
#測試2是否不是list_4的成員
print(2 not in (list_4))
#淺復制
list_5 = list_4.copy()
print(list_5)

技術分享圖片

python之路-08-集合