我就廢話不多說(shuō)了,大家還是直接看代碼吧~
print({1, 2} > {1}) # True
補(bǔ)充:Python——集合是一個(gè)非常之牛逼的數(shù)據(jù)比較方式
什么是集合?對(duì)似懂非懂或者被集合搞暈了的同學(xué)可以來(lái)看一下。
首先不想說(shuō)太多概念性的東西,免得又暈了!
請(qǐng)看下面我寫(xiě)的例子,看完之后自然就知道啥是集合以及如何去應(yīng)用它
#變量a是一個(gè)集合類型
a = set ()
print ( type (a))
#定義一個(gè)列表,并存入很多重復(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) #將列表中的每一個(gè)元素添加進(jìn)集合
#打印集合,發(fā)現(xiàn),自動(dòng)去掉重復(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))
那么,集合還涉及到下面幾個(gè)牛逼的玩意:
并集:
它將兩個(gè)集合作為參數(shù),并返回一個(gè)包含全部存在于兩個(gè)集合中任意一個(gè)的元素的新集合,用union()方法, 操作符是:"|"
交集:
它接收第2個(gè)集合為參數(shù),返回的是僅包含同時(shí)存在于兩個(gè)集合的那些元素,intersection方法實(shí)現(xiàn),操作符是:""
差集:
它告訴我們哪些是剩下的元素,它是一個(gè)存儲(chǔ)于或是存在于這個(gè)集合或是另一個(gè)集合,但不是同時(shí)存在于兩個(gè)集合的對(duì)象的集合 symmetric_difference方法實(shí)現(xiàn),操作符是:"-"
繼續(xù)看例子
a = { 1 , 2 , 3 , 4 , 5 }
b = { 6 , 2 , 3 , 7 }
#求a和b的并集,將兩組數(shù)據(jù)中共同存在的數(shù)字去除掉后,生成一個(gè)不存在重復(fù)數(shù)字的新集合
print (a.union(b))
#求a和b的交集,將兩組數(shù)據(jù)中共有的數(shù)字提取出來(lái),并生成一個(gè)新的集合,讓我們知道這兩組數(shù)據(jù)中哪些數(shù)字都存在于兩組數(shù)據(jù)里
print (a.intersection(b))
#求a和b的差集,將兩組數(shù)據(jù)中所沒(méi)有的數(shù)字提取出來(lái)后,生成一個(gè)新的集合
print (a.symmetric_difference(b))
#注意:他們的結(jié)果取決于誰(shuí)是調(diào)用者,誰(shuí)是參數(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
總結(jié):
通過(guò)測(cè)試說(shuō)明,集合可以用來(lái)操作另一個(gè)集合,集合不僅僅只是一個(gè)容器
那么,應(yīng)用場(chǎng)景一般有如下:
1、對(duì)兩處不同的數(shù)據(jù),如果要快速的結(jié)合起來(lái)去做分析,那么請(qǐng)用集合
2、那么快速的結(jié)合起來(lái)的目的一般是干嘛呢?,比如想知道兩處數(shù)據(jù)中哪些是重復(fù)的,哪些是不同的
因此:
集合是一個(gè)非常之牛逼的數(shù)據(jù)比較方式
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。
您可能感興趣的文章:- python中判斷集合范圍的方法小結(jié)
- Python 實(shí)現(xiàn)集合Set的示例
- python集合的新增元素方法整理
- Python GUI之tkinter窗口視窗教程大集合(推薦)
- python利用遞歸方法實(shí)現(xiàn)求集合的冪集