python集合的操作

來源:互聯網
上載者:User

標籤:python集合操作   python集合   

集合的兩大特性:

一、去重

二、關係測試


1、去重效果

>>> l1 = ["張三","李四","王五","張三"]

>>> print(type(l1))                 //查看類型

<class 'list'> 

>>> l1 = set(l1)                  //set把列表變為集合

>>> print(l1)

{'李四', '張三', '王五'}

>>> print(type(l1))

<class 'set'>


2、取兩個集合的交集

>>> l1 = set([1,2,3,4,5])

>>> l2 = set([1,6,7,8,9])

>>> print(l1.intersection(l2))            //intersection是交集的意思,兩個列表中的交集是"1"

{1}


3、取兩個集合的並集

>>> l1 = set([1,2,3,4,5])

>>> l2 = set([1,6,7,8,9])

>>> print(l1.union(l2))                 //union是求並集的意思,也就是兩個列表合并後去重

{1, 2, 3, 4, 5, 6, 7, 8, 9}


4、取兩個集合的差集

>>> print(l1.difference(l2))             //也就是l1有,l2沒有的元素

{2, 3, 4, 5}


>>> print(l2.difference(l1))            //l2有,l1沒有的元素

{8, 9, 6, 7}


5、判斷子集和父集,也就是判斷是不是包含的關係

>>> l3 = set([2,3,4])

>>> print(l3.issubset(l1))           //l1中的元素包含l3中的元素,所以l3是l1的子集

True

>>> print(l3.issubset(l2))

False

>>> print(l1.issuperset(l3))         //l1是l3的父集

True


6、取出兩個集合的對稱差集,也就是兩個集合中互相都不存在的元素

>>> l1

{1, 2, 3, 4, 5}

>>> l2

{1, 6, 7, 8, 9}

>>> print(l1.symmetric_difference(l2))     //兩個集合中除了元素“1”,都互相不存在

{2, 3, 4, 5, 6, 7, 8, 9}



還可以使用運算子完成以上的操作

1、交集:

>>> print(l1 & l2)

{1}


2、並集

>>> print(l1 | l2)

{1, 2, 3, 4, 5, 6, 7, 8, 9}


3、差集

>>> print(l1 - l2)

{2, 3, 4, 5}


4、對稱差集

>>> print(l1 ^ l2)

{2, 3, 4, 5, 6, 7, 8, 9}


集合的增刪改查

1、添加集合元素

>>> l1.add(666)        //添加單個元素使用add

>>> print(l1)

{1, 2, 3, 4, 5, 666}

>>> l1.update([777,888,999])            //update方法可以同時添加多個元素

>>> print(l1)

{1, 2, 3, 4, 5, 999, 777, 888, 666}


2、刪除集合元素

>>> l1.remove(666)  

>>> print(l1)

{1, 2, 3, 4, 5, 999, 777, 888}


python集合的操作

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.