在前面,我們學(xué)習(xí)了dict,知道dict的key是不重復(fù)的,當(dāng)我們往dict里添加一個(gè)相同key的value時(shí),新的value將會(huì)覆蓋舊的value。
有的時(shí)候,我們只想要 dict 的 key,不關(guān)心 key 對(duì)應(yīng)的 value,目的就是保證這個(gè)集合的元素不會(huì)重復(fù),這時(shí),set就派上用場(chǎng)了。
set和list類似,擁有一系列元素,但是set和list不一樣,set里面的元素是不允許重復(fù)的,而list里面可以包含相同的元素;set與list的另一個(gè)區(qū)別是,set里面的元素是沒(méi)有順序的。
創(chuàng)建set的方式是使用set()
,并傳入一個(gè)list,list的元素將會(huì)被轉(zhuǎn)換成set的元素。
s = set([1, 4, 3, 2, 5]) print(s) # ==> set([1, 2, 3, 4, 5])
需要注意的是,上述打印的形式類似 list, 但它不是 list,仔細(xì)看還可以發(fā)現(xiàn),打印的順序和原始 list 的順序有可能是不同的,因?yàn)閟et內(nèi)部存儲(chǔ)的元素是無(wú)序的。
另外,set不能包含重復(fù)的元素,我們傳入重復(fù)的元素看看會(huì)發(fā)生什么。
s = set([1, 4, 3, 2, 5, 4, 2, 3, 1]) print(s) # ==> set([1, 2, 3, 4, 5])
可以看到,在傳入set()的list中,包含了重復(fù)的元素,但是打印的時(shí)候,相同的元素只保留了一個(gè),重復(fù)的元素都被去掉了,這是set的一個(gè)重要特點(diǎn)。
請(qǐng)使用set表示班里面的五個(gè)同學(xué)。
'Alice', 'Bob', 'Candy', 'David', 'Ellena'
參考答案:
names = ['Alice', 'Bob', 'Candy', 'David', 'Ellena'] name_set = set(names) print(name_set) # ==> set(['Bob', 'Ellena', 'Alice', 'Candy', 'David'])
請(qǐng)驗(yàn)證,完成請(qǐng)求
由于請(qǐng)求次數(shù)過(guò)多,請(qǐng)先驗(yàn)證,完成再次請(qǐng)求
打開(kāi)微信掃碼自動(dòng)綁定
綁定后可得到
使用 Ctrl+D 可將課程添加到書簽
舉報(bào)