這篇文章給大家介紹Python 中如何使用set函數(shù),內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
成都創(chuàng)新互聯(lián)是一家專業(yè)從事網(wǎng)站制作、網(wǎng)站設(shè)計(jì)、網(wǎng)頁設(shè)計(jì)的品牌網(wǎng)絡(luò)公司。如今是成都地區(qū)具影響力的網(wǎng)站設(shè)計(jì)公司,作為專業(yè)的成都網(wǎng)站建設(shè)公司,成都創(chuàng)新互聯(lián)依托強(qiáng)大的技術(shù)實(shí)力、以及多年的網(wǎng)站運(yùn)營經(jīng)驗(yàn),為您提供專業(yè)的成都網(wǎng)站建設(shè)、營銷型網(wǎng)站建設(shè)及網(wǎng)站設(shè)計(jì)開發(fā)服務(wù)!
set集合函數(shù)主要用來去除重復(fù):
比如一個(gè)列表有多個(gè)重復(fù)值,可以用set搞掉
>>> l = [1,2,3,4,5,4,3,21]
>>>
>>> l
[1, 2, 3, 4, 5, 4, 3, 21]
>>>
>>>
>>> set(l)
set([1, 2, 3, 4, 5, 21])
>>>
set 可以做交集,并集,差集
set的增刪改
增:>>> a = set([1,2,3,4])
>>> a
set([1, 2, 3, 4])
>>>
>>> a.add('alex')
>>> a
set([1, 2, 3, 4, 'alex'])
刪:>>> a.remove('alex')
>>> a
set([1, 2, 3, 4])
>>>
添加多項(xiàng):>>> b = set([1,2,7,8])
>>> b
set([8, 1, 2, 7])
>>> a.update(b)
>>> a
set([1, 2, 3, 4, 7, 8])
判斷b是否包含在a中
>>> a
set([1, 2, 3, 4, 7, 8])
>>> b
set([8, 1, 2, 7])
>>>
>>> b.issubset(a)
True
python中的“無序”set是和其他用平衡二叉樹實(shí)現(xiàn)的set(如c++中用紅黑樹實(shí)現(xiàn)的set和python中的orderedset)相對而言的。
基于平衡二叉樹的set存取操作都是O(lgn)的時(shí)間,但是由于二叉搜索樹的特點(diǎn),可以很輕松的找到任意節(jié)點(diǎn)的前驅(qū)和后繼節(jié)點(diǎn),所以算是“有序”的。
而python中的set基于哈希表實(shí)現(xiàn),存取時(shí)間可看做O(1),但是沒有辦法高效的完成順序相關(guān)的操作(比如找前驅(qū)后繼,最大最小值等等),所以認(rèn)為是“無序”的。
關(guān)于Python 中如何使用set函數(shù)就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。