1. 程式人生 > >python基礎--set操作

python基礎--set操作

python的集合set的操作精講:

set的特點:

1、無序

2、可重複

3、不可迭代--------可迭代的有字串、list、元組tuple

主要操作:

1、建立集合。set():可變的 ;不可變的frozenset():
2、新增操作: add,update,注意update和add的區別
3、刪除 remove
4、成員關係 in,not in
6、交集,並集,差集 & | -
7、set去重  列表內容元素重複

>>> x = set('spam')  
>>> y = set(['h','a','m'])  
>>> x, y  
(set(['a', 'p', 's', 'm']), set(['a', 'h', 'm']))  
    
  
>>> x & y # 交集  
set(['a', 'm'])  
  
>>> x | y # 並集  
set(['a', 'p', 's', 'h', 'm'])  
  
>>> x - y # 差集  
set(['p', 's'])  

記得以前個網友提問怎麼去除海量列表裡重複元素,用hash來解決也行,只不過感覺在效能上不是很高,用set解決還是很不錯的,示例如下:  
  
>>> a = [11,22,33,44,11,22]  
>>> b = set(a)  
>>> b  
set([33, 11, 44, 22])  
>>> c = [i for i in b]  
>>> c  
[33, 11, 44, 22]