在上一節的合集中,我們瞭解了Python字典增刪改及推導式的相關知識,本節我們將進一步瞭解一下Python集合的相關知識。
Python中的集合同數學中的集合概念類似,也適用於儲存不重複元素的,他有可變集合和不可變集合兩種。在形式上,集合所有元素都放在一對{}中,兩個相鄰元素間使用,分隔,集合最好的應用就是去掉重複元素。
在Python中提供了兩種建立集合的方法:一種是直接使用{}建立,另外一種是透過set()函式將列表,元組等可迭代物件轉換為集合。
1. 直接使用{}建立集合在Python中,建立set集合也可以像列表,元組合字典一樣,直接將集合賦值給變數從而實現建立集合,即直接使用{}建立,語法格式如下:
setname={element1,element2,element3,...,element n}引數說明:setname:表示集合的名稱,可以是任何符合Python命名規則的識別符號。element1,element2,element3,...,element n:表示集合中的元素,個數沒有限制,只要是Python支援的資料型別就可以
注:在建立集合時,如果輸入了重複元素,Python會自動只保留一個。
例:
set1={'水瓶座','射手座','雙魚座','雙子座'}set2={3,1,4,1,5,9,2,6}set3={'Python',28,('人生苦短','我用Python')}以上三段程式碼將建立下面3個集合:{'水瓶座','射手座','雙魚座','雙子座'}{1,2,3,4,5,6,9}{'Python',28,('人生苦短','我用Python')}
注:由於Python中的set集合是無序的,所以每次輸出時元素的排列順序可能都不相同。
2.使用set()函式建立在Python中,可以使用set()函式將列表,元組等其他可迭代物件轉換為集合。
set()函式的語法格式如下:
setname=set(iteration)引數說明:表示集合名稱iteration:表示要轉換為集合的可迭代物件,可以是列表,元組,range物件等,也可以是字串。如果是字串,返回的集合將是包含全部不重複字元的集合。
例:
set1=set(“命運給予我們的不是失望之酒,而是機會之杯。”)set2=([1.414,1.732,3.14159,2.236])set3=set(('人生苦短','我用Python'))以上程式碼將會建立以下3個集合:{‘不’,'的',‘望’,'是','給',',','我','。','酒','會','杯','運','們','予','而','失','機','命','之'}{1.414,1.732,3.14159,2.236}{'人生苦短','我用Python'}
從上面的例子建立的集合結果中可以看出,在建立集合時,如果出現了重複元素,那麼將只保留一個,如在第一個集合中的'是'和‘之’都只保留一個。
注:在建立空集合時,只能使用set()實現,而不能使用一對{}實現,這是因為在Python中。直接使用一對{}表示建立一個空字典。在Python中,建立集合時推薦採用Set()函式實現。
花絮: