我就廢話不多說了,大家還是直接看代碼吧~
print({1, 2} > {1}) # True
補(bǔ)充:Python——集合是一個非常之牛逼的數(shù)據(jù)比較方式
什么是集合?對似懂非懂或者被集合搞暈了的同學(xué)可以來看一下。
首先不想說太多概念性的東西,免得又暈了!
請看下面我寫的例子,看完之后自然就知道啥是集合以及如何去應(yīng)用它
#變量a是一個集合類型 a = set () print ( type (a)) #定義一個列表,并存入很多重復(fù)的數(shù)字 dt = [ 12 , 9 , 2 , 8 , 4 , 9 , 2 , 7 , 4 , 5 , 6 , 11 , 5 , 7 , 5 , 7 , 9 , 8 , 7 , 2 ] for i in dt: #遍歷列表 a.add(i) #將列表中的每一個元素添加進(jìn)集合 #打印集合,發(fā)現(xiàn),自動去掉重復(fù)的數(shù)字了 print (a) #5存在于集合中嗎? print ( 5 in a) #遍歷集合 for item in a: print (item) #將集合轉(zhuǎn)化成列表 set_list = list (a) print (set_list) print ( type (set_list))
那么,集合還涉及到下面幾個牛逼的玩意:
它將兩個集合作為參數(shù),并返回一個包含全部存在于兩個集合中任意一個的元素的新集合,用union()方法, 操作符是:"|"
它接收第2個集合為參數(shù),返回的是僅包含同時存在于兩個集合的那些元素,intersection方法實(shí)現(xiàn),操作符是:""
它告訴我們哪些是剩下的元素,它是一個存儲于或是存在于這個集合或是另一個集合,但不是同時存在于兩個集合的對象的集合 symmetric_difference方法實(shí)現(xiàn),操作符是:"-"
繼續(xù)看例子
a = { 1 , 2 , 3 , 4 , 5 } b = { 6 , 2 , 3 , 7 } #求a和b的并集,將兩組數(shù)據(jù)中共同存在的數(shù)字去除掉后,生成一個不存在重復(fù)數(shù)字的新集合 print (a.union(b)) #求a和b的交集,將兩組數(shù)據(jù)中共有的數(shù)字提取出來,并生成一個新的集合,讓我們知道這兩組數(shù)據(jù)中哪些數(shù)字都存在于兩組數(shù)據(jù)里 print (a.intersection(b)) #求a和b的差集,將兩組數(shù)據(jù)中所沒有的數(shù)字提取出來后,生成一個新的集合 print (a.symmetric_difference(b)) #注意:他們的結(jié)果取決于誰是調(diào)用者,誰是參數(shù),上面的3條例子中,a集合是調(diào)用者,b集合是參數(shù) #a集合中的所有數(shù)字都存在于b集合的話,則返回true, a是調(diào)用者,b是參數(shù) print (a.issubset(b)) #b集合作為參數(shù),b集合中的所有元素都存在于a集合中的話,返回true print (a.issuperset(b)) #想要知道全部只存在于a集合而不存在于b集合的元素 print (a.difference(b)) #結(jié)果是1,4,5 #反之 print (b.difference(a)) #結(jié)果是6和7
通過測試說明,集合可以用來操作另一個集合,集合不僅僅只是一個容器
1、對兩處不同的數(shù)據(jù),如果要快速的結(jié)合起來去做分析,那么請用集合
2、那么快速的結(jié)合起來的目的一般是干嘛呢?,比如想知道兩處數(shù)據(jù)中哪些是重復(fù)的,哪些是不同的
集合是一個非常之牛逼的數(shù)據(jù)比較方式
以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。
標(biāo)簽:石家莊 錫林郭勒盟 西寧 梅州 懷化 浙江 文山 昆明
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《python 如何比較兩集合的大小關(guān)系》,本文關(guān)鍵詞 python,如何,比較,兩,集合,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。