Python中集合的內建函數(shù)和內建方法學習教程
集合內建函數(shù)和內建方法
(1)標準類型函數(shù)
len():把集合作為參數(shù)傳遞給內建函數(shù) len(),返回集合的基數(shù)(或元素的個數(shù))。
(2)集合類型工廠函數(shù)
set()和 frozenset()工廠函數(shù)分別用來生成可變和不可變的集合。如果不提供任何參數(shù),默認會生成空集合。如果提供一個參數(shù),則該參數(shù)必須是可迭代的,即一個序列或迭代器或支持迭代的一個對象,例如一個文件或一個字典。
(3)方法(所有的集合方法)
s.issubset(t) 如果s是t的子集,則返回True,否則返回False
s.issuperset(t) 如果t是s的超集,則返回True,否則返回False
s.union(t) 返回一個新集合,該集合是s和t的并集
s.intersection(t) 返回一個新集合,該集合是s和t的交集
s.difference(t) 返回一個新集合,該集合是 s 的成員,但不是 t 的成員
s.symmetric_difference(t) 返回一個新集合,該集合是s或t的成員,但不是s和t共有的成員
s.copy() 返回一個新集合,它是集合s的淺復制
內建方法copy() 沒有等價的操作符。和同名的字典方法一樣,copy()方法比用像set()、frozenset()或dict()這樣的工廠方法復制對象的副本要快。
(4)方法(僅適用于可變集合)
可變集合類型的方法:
演示實例:
一、集合類型方法
>>> s = set('cheeseshop') >>> t = set('bookshop') >>> s set(['c', 'e', 'h', 'o', 'p', 's']) >>> t set(['b', 'h', 'k', 'o', 'p', 's']) >>> s.issubset(t) False >>> s.issuperset(t) False >>> s.union(t) set(['c', 'b', 'e', 'h', 'k', 'o', 'p', 's']) >>> s.intersection(t) set(['h', 's', 'o', 'p']) >>> s.difference(t) set(['c', 'e']) >>> s.symmetric_difference(t) set(['b', 'e', 'k', 'c']) >>> s.copy() set(['p', 'c', 'e', 'h', 's', 'o'])
二、可變集合類型的方法
1、s.update(t)——用t中的元素修改s,即s現(xiàn)在包含s或t的成員。
>>> s.update(t) >>> s set(['c', 'b', 'e', 'h', 'k', 'o', 'p', 's'])
2、s.intersection_update(t)——s中的成員是共同屬于s和t中的元素。
>>> s = set('cheeseshop') >>> t = set('bookshop') >>> s.intersection_update(t) >>> s set(['h', 's', 'o', 'p'])
3、s.difference_update(t)——s中的成員是屬于s但不包含在t中的元素。
>>> s = set('cheeseshop') >>> t = set('bookshop') >>> s.difference_update(t) >>> s set(['c', 'e'])
4、s.symmetric_difference_update(t)——s中的成員更新為那些包含在s或t中,但不是s和t共有的元素。
>>> s = set('cheeseshop') >>> t = set('bookshop') >>> s.symmetric_difference_update(t) >>> s set(['c', 'b', 'e', 'k'])
5、s.add(obj)——在集合s中添加對象obj。
>>> s.add('o') >>> s set(['c', 'b', 'e', 'k', 'o'])
6、s.remove(obj)——從集合s中刪除對象obj,如果obj不是集合s中的元素(obj not in s),將引發(fā)KeyError。
<p>>>> s.remove('b') >>> s set(['c', 'e', 'k', 'o']) >>> s.remove('a')</p><p>Traceback (most recent call last): File "<pyshell#53>", line 1, in <module> s.remove('a') KeyError: 'a' </p>
7、s.discard(obj)——如果obj是集合s中的元素,從集合s中刪除對象obj。
>>> s.discard('a') >>> s set(['c', 'e', 'k', 'o']) >>> s.discard('e') >>> s set(['c', 'k', 'o'])
8、s.pop()——刪除集合是中的任意一個對象,并返回它。
>>> s.pop() 'c' >>> s set(['k', 'o'])
9、s.clear()——刪除集合s中的所有元素。
>>> s.clear() >>> s set([])
相關文章
利用信號如何監(jiān)控Django模型對象字段值的變化詳解
這篇文章主要給大家介紹了關于利用信號如何監(jiān)控Django模型對象字段值變化的相關資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考借鑒,下面隨著小編來一起學習學習吧。2017-11-11LyScript實現(xiàn)計算片段Hash并寫出Excel的示例代碼
本案例將學習運用LyScript計算特定程序中特定某些片段的Hash特征值,并通過xlsxwriter這個第三方模塊將計算到的hash值存儲成一個excel表格,感興趣的可以跟隨小編一起學習一下2022-09-09python 表達式和語句及for、while循環(huán)練習實例
下面小編就為大家?guī)硪黄猵ython 表達式和語句及for、while循環(huán)練習實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-07-07django處理select下拉表單實例(從model到前端到post到form)
這篇文章主要介紹了django處理select下拉表單實例(從model到前端到post到form),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-03-03