Python的集合(set)和其他語言類似, 是一個(gè)無序不重復(fù)元素集, 基本功能包括關(guān)系測(cè)試和消除重復(fù)元素. 集合對(duì)象還支持union(聯(lián)合), intersection(交), difference(差)和sysmmetric difference(對(duì)稱差集)等數(shù)學(xué)運(yùn)算.由于集合是無序的,所以,sets 不支持 索引, 分片, 或其它類序列(sequence-like)的操作。
集合也存在不可變形式,frozenset為固定集合.
#定義一個(gè)集合set1 = {1, 2, 3, 4, 5}# 或者使用 set 函數(shù)list1 = [6, 7, 7, 8, 8, 9]set2 = set(list1)set2.add(10) # 添加新元素PRint set2 # set([8, 9, 6, 7]) 去掉重復(fù)內(nèi)容,而且是無序的set3 = frozenset(list1)set3.add(10) # 固定集合不能添加元素### 集合有并集,交集,求差操作### 并集:intersection() 方法返回一個(gè)新集合,包含在兩個(gè)集合中同時(shí)出現(xiàn)的所有元素。### 交集:union() 方法返回一個(gè)新集合,包含在兩個(gè) 集合中出現(xiàn)的元素。### 差集:difference() 方法返回的新集合中,包含所有在 集合A出現(xiàn)但未在集合B中的元素。### symmetric_difference() 方法返回一個(gè)新集合,包含所有只在其中一個(gè)集合中出現(xiàn)的元素。# 刪除元素set2.discard(6) # 當(dāng)元素不存在時(shí),不會(huì)引發(fā)異常set2.remove(6) # 與discard的區(qū)別在于,如果沒有要?jiǎng)h除的元素,remove會(huì)引發(fā)一個(gè)異常set2.pop() # 因?yàn)閟et是無序的,所以pop會(huì)隨機(jī)的從set中刪除一個(gè)元素新聞熱點(diǎn)
疑難解答
網(wǎng)友關(guān)注