Python——合集,python合集

來源:互聯網
上載者:User

Python——合集,python合集

合集

主要功能是對比列表中的資訊,進行關係測試。

特點:
1. 去重,把一個列表變成合集,就自動去重了。
2. 關係測試,測試兩組資料之間的交集、差集、並集等關係。
3. 沒有插入功能,只能添加。
4. 一個無序的,不重複的資料群組合

5. 沒有插入功能,只能添加。

以{}的形式出現,類型為set

list_1 = [1,2,3,5,3,4,2,33,1]  #建立列表list_1 = set(list_1)            #關鍵字轉換成集合print(list_1,type(list_1))      #輸出集合,並直接進行去重。{1, 2, 3, 4, 5, 33} <class 'set'>  #以大括弧的形式出現,資料類型為set

交集:

list_1 = set([1,2,3,5,3,4,2,33,1])list_2 = set([2,2,4,5,6,7,7,8])print(list_1.intersection(list_2)) #交集,就是將兩個集合中的重複項顯示出來。{2, 4, 5}

交集縮寫:

list_1 = set([1,2,3,5,3,4,2,33,1])list_2 = set([2,2,4,5,6,7,7,8])print(list_1 & list_2) #交集縮寫{2, 4, 5}

 並集:

list_1 = set([1,2,3,5,3,4,2,33,1])list_2 = set([2,2,4,5,6,7,7,8])print(list_1.union(list_2)) #並集,就是將兩個列表中的重複選項去掉合并在一起。{1, 2, 3, 4, 5, 33, 6, 7, 8}

並集縮寫。

list_1 = set([1,2,3,5,3,4,2,33,1])list_2 = set([2,2,4,5,6,7,7,8])print(list_1 | list_2) #並集縮寫{1, 2, 3, 4, 5, 33, 6, 7, 8}

差集,就是1裡面有而2裡面沒有的資料。

list_1 = set([1,2,3,5,3,4,2,33,1])list_2 = set([2,2,4,5,6,7,7,8])print(list_1.difference(list_2)) #差集{1, 3, 33}

差集縮寫:

list_1 = set([1,2,3,5,3,4,2,33,1])list_2 = set([2,2,4,5,6,7,7,8])print(list_1 - list_2) #差集縮寫{1, 3, 33}

子集,就是判斷列表1中是不是包含列表3的全部資料。

list_1 = set([1,2,3,5,3,4,2,33,1])list_3 = set([1,2,3])print(list_3.issubset(list_1)) #子集True    #返回false或True

父集,就是判斷列表3中全部內容是不是在列表1中都有。

list_1 = set([1,2,3,5,3,4,2,33,1])list_3 = set([1,2,3])print(list_1.issuperset(list_3)) #父集True    #返回false或True

對稱差集,就是將兩個列表中都有的數字去掉,然後合并在一起。

list_1 = set([1,2,3,5,3,4,2,33,1])list_2 = set([1,2,3,88])print(list_1.symmetric_difference(list_2)) #對稱差集print(list_1 ^ list_2) #對稱差集縮寫{33, 4, 5, 88}

判斷交集,就是判斷兩個列表中是否有相同資訊。

list_1 = set([1,2,3,5,3,4,2,33,1])list_2 = set([1,2,3,88])print(list_1.isdisjoint(list_2))False  #如果有交集就顯示False,如果沒有就顯示True

添加:

list_1 = set([1,2,3,5,3,4,2,33,1])list_1.add(999) #添加print(list_1)list_1.update([444,333,222]) #添加多項print(list_1){1, 2, 3, 4, 5, 33, 999}{1, 2, 3, 4, 5, 33, 999, 333, 444, 222}

刪除:

list_1 = set([1,2,3,5,3,4,2,333,1])list_1.remove(333) #刪除print(list_1)

隨機刪除一個:

list_1 = set([1,2,3,5,4,333])print(list_1.pop())1   #返回刪除的值

刪除,如果不在集合內將不報錯。

list_1 = set([1,2,3,5,4,333])list_1.discard(222)          #集合內沒有也不會報錯。

顯示去重以後的長度:

list_1 = set([1,2,3,5,4,333])print(len(list_1))6

判斷數字是否在合集中。

list_1 = set([1,2,3,5,4,333])print(6 in list_1) False   #如果沒有將顯示False,如果有將顯示True

盤算數字是否不在這個集合中。

list_1 = set([1,2,3,5,4,333])print(6 not in  list_1)True  #如果不在將顯示True,如果在將顯示False

 複製:

list_1 = set([1,2,3,5,4,333])list_2 = list_1.copy()    #複製到list_2中。print(list_2)print(type(list_2)){1, 2, 3, 4, 5, 333}<class 'set'>

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.