先簡單說一下set
t.add('x') # 新增一項
s.update([10,37,42]) # 在s中新增多項
t.remove('h') # 刪除一項
len(s) # set 的長度
xin s # 測試 x 是否是 s 的成員
x not in s # 測試 x 是否不是 s 的成員
s.issubset(t)
s <= t # 測試是否 s 中的每乙個元素都在 t 中
s.issuperset(t)
s >= t # 測試是否 t 中的每乙個元素都在 s 中
s.union(t)
s | t # 返回乙個新的 set 包含 s 和 t 中的每乙個元素
s.intersection(t)
s & t # 返回乙個新的 set 包含 s 和 t 中的公共元素
s.difference(t)
s - t # 返回乙個新的 set 包含 s 中有但是 t 中沒有的元素
s.symmetric_difference(t)
s ^ t # 返回乙個新的 set 包含 s 和 t 中不重複的元素
s.copy() # 返回 set 「s」的乙個淺複製
set(可變集合)與frozenset(不可變集合)的區別:set無序排序且不重複,是可變的,有add(),remove()等方法。既然是可變的,所以它不存在雜湊值。基本功能包括關係測試和消除重複元素. 集合物件還支援union(聯合), intersection(交集), difference(差集)和sysmmetric difference(對稱差集)等數**算.
sets 支援 x in set, len(set),和 for x in set。作為乙個無序的集合,sets不記錄元素位置或者插入點。因此,sets不支援 indexing, 或其它類序列的操作。
frozenset是凍結的集合,它是不可變的,存在雜湊值,好處是它可以作為字典的key,也可以作為其它集合的元素。缺點是一旦建立便不能更改,沒有add,remove方法。
python中set和frozenset方法和區別
詳細參見部落格 set 可變集合 與frozenset 不可變集合 的區別 set無序排序且不重複,是可變的,有add remove 等方法。既然是可變的,所以它不存在雜湊值。基本功能包括關係測試和消除重複元素.集合物件還支援union 聯合 intersection 交集 difference 差...
python中list和set查詢
fromrandomimportrandrange fromtimeitimport importsys l randrange 1000 foriinrange 100 print sys.getsizeof l s set l print sys.getsizeof s defchecklist...
python中set和list的坑。。。
我之前一直傻傻的認為 set 的作用就是把list中的東西單純的變換了格式 將 變成了 其實不然,它去掉了list中的重複元素。python 的set型別和其他語言類似,是乙個無序不重複元素集,基本功能包括關係測試和消除重複元素。如果我們要處理一些資料,需要去除掉重複元素,比如列表a 5,2,5,1...