Python學習筆記 (第8課)

來源:互聯網
上載者:User

標籤:

本節我們將學習python的另一種資料類型:集合(set)

1.集合(set)

 

  集合在Python中是一種沒有重複元素,且無序的資料類型,且不能通過索引來引用集合中的元素

>>> basket = [‘apple‘, ‘orange‘, ‘apple‘, ‘pear‘, ‘orange‘, ‘banana‘]>>> set(basket)set([‘orange‘, ‘pear‘, ‘apple‘, ‘banana‘])

set1-set2來獲得在set1中的元素在set2中不存在的元素,返回一個新的集合。該功能和set1.difference(set2)的效果一樣

>>> f=set([1,2,3,4,5])>>> c=set([3,4,5,6])>>> f.difference(c)set([1, 2])>>> list(f)[1, 2, 3, 4, 5]>>> f-cset([1, 2])

set1|set2 獲得在set1或set2中的元素,返回一個新的集合

 

>>> f=set([1,2,3,4,5])>>> c=set([3,4,5,6])>>> f|cset([1, 2, 3, 4, 5, 6])

set1&set2 獲得在set1和set2中均存在的元素,返回一個新的集合

>>> f=set([1,2,3,4,5])>>> c=set([3,4,5,6])>>> f&cset([3, 4, 5])

set1^set2 獲得在set1或set2中存在,但不包括在set1和set2中都存在的元素,返回一個新的集合

>>> f=set([1,2,3,4,5])>>> c=set([3,4,5,6])>>> f^cset([1, 2, 6])

 

2.集合的函數

set.add(x) 新增一個元素x,如果集合中已經存在x,則不會新增到集合中

>>> f=set([3,4,5,6])>>> f.add(‘a‘)>>> fset([‘a‘, 3, 4, 5, 6])>>> f.add(‘a‘)>>> fset([‘a‘, 3, 4, 5, 6])

set.clear()清空集合

>>> f=set([3,4,5,6])>>> f.clear()>>> fset([])

set.copy()複製一個集合

>>> f=set([3,4,5,6])>>> s=f.copy()>>> sset([3, 4, 5, 6])

set1.difference(set2) 獲得在set1中的元素在set2中不存在的元素,返回一個新的集合.與set1-set2相同

>>> f=set([3,4,5,6])>>> s=set([1,2,3,4,5])>>> s.difference(f)set([1, 2])

set1.difference_update(set2) 更新set1,使set1=set1-set2

>>> s=set([1,2,3,4,5])>>> s.difference_update(f)>>> sset([1, 2])

set.discard(x) 刪除集合中值為x的元素

>>> s=set([1,2,3,4,5])>>> s.discard(3)>>> sset([1, 2, 4, 5])

set1.intersection(set2) 返回set1和set2中均存在的元素,與set1&set2的效果相同

>>> f=set([3,4,5,6])>>> s=set([1,2,3,4,5])>>> f.intersection(s)set([3, 4, 5])

set1.intersection_update(set2) 更新set1,使set1等於set1^set2

>>> f=set([3,4,5,6])>>> s=set([1,2,3,4,5])>>> f.intersection_update(s)>>> fset([3, 4, 5])

set1.isdisjoint(set2) 判斷set1與set2是否有相同的元素,如果有,返回false,沒有返回true

>>> f=set([3,4,5,6])>>> s=set([1,2,3,4,5])>>> q=set([1,0])>>> f.isdisjoint(s)False>>> f.isdisjoint(q)True

set1.issubset(set2)判斷set1是否是set2的子集,如果是,返回true,否則返回false

>>> f=set([1,2])>>> q=set([3,4,5,6,7])>>> s=set([1,2,3,4,5])>>> f.issubset(q)False>>> f.issubset(s)True

set1.issuperset(set2)判斷set1是否包含了set2,即set2是否是set1的子集,如果是,返回true,否則返回false

>>> f=set([1,2])>>> s=set([1,2,3,4,5])>>> f.issuperset(s)False>>> s.issuperset(f)True

 

 

 

 

Python學習筆記 (第8課)

相關文章

聯繫我們

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