2 回答

TA貢獻(xiàn)2條經(jīng)驗(yàn) 獲得超2個(gè)贊
list:
list是一種有序的集合,也就是說(shuō),list中的元素是按照順序排列的。
構(gòu)造list非常簡(jiǎn)單,按照上面的代碼,直接用 [ ] 把list的所有元素都括起來(lái)
通過(guò)索引來(lái)獲取list中的指定元素。需要特別注意的是,索引從 0 開(kāi)始,也就是說(shuō),第一個(gè)元素的索引是0,第二個(gè)元素的索引是1,以此類(lèi)推。
classmates?=?['Michael',?'Bob',?'Tracy'] classmates?#打印classmates變量的內(nèi)容 classmates[0]?#打印出第一個(gè)元素
tuple:
tuple是另一種有序的列表,但是tuple一旦創(chuàng)建完畢,就不能修改了。
創(chuàng)建tuple是用 ( )。
也是通過(guò)索引來(lái)讀取tuple中的元素
以上的兩個(gè)類(lèi)型是有序的,以下的就是無(wú)序的了
dict:
dict元素按照 key: value給出,用花括號(hào) { } 將元素包括
dict元素訪問(wèn)就不是通過(guò)索引了(由于dict是無(wú)序的),使用d[key] (注意創(chuàng)建時(shí)使用花括號(hào),而查詢(xún)時(shí)使用的是中括號(hào))的形式來(lái)查找,返回值是key的對(duì)應(yīng) value
#創(chuàng)建一個(gè)dict d?=?{?'Adam':?95,?'Lisa':?85,?'Bart':?59?} print?d['Adam']?#打印輸出的結(jié)果是?95
set:
set用來(lái)創(chuàng)建一組元素沒(méi)有重復(fù),而且是無(wú)序的數(shù)據(jù)集,而且它很像tuple,元素也是不變對(duì)象。
創(chuàng)建 set 的方式是調(diào)用 set( ) 并傳入一個(gè) list,list的元素將作為set的元素(這個(gè)有點(diǎn)拗口,其實(shí)就是先創(chuàng)建一個(gè)list,用中括號(hào) [ ] 來(lái)建立,然后放到set( )里面,所以就會(huì)出現(xiàn)下面的奇怪的代碼)
?s?=?set(['A',?'B',?'C'])
還要強(qiáng)調(diào)的一點(diǎn)是set的元素是非重復(fù)的。即使你建立時(shí)有重復(fù)的元素,建立完成時(shí),set會(huì)自動(dòng)去掉重復(fù)的元素。例如:
s?=?set(['A',?'B',?'C',?'C']) print?s?#打印結(jié)果將是?set(['A',?'C',?'B'])
用的場(chǎng)合就根據(jù)不同數(shù)據(jù)類(lèi)型來(lái)選擇,譬如你有一組學(xué)生姓名和各個(gè)學(xué)生的對(duì)應(yīng)成績(jī),這時(shí)就可以選擇用dict來(lái)建立,因?yàn)榈綍r(shí)候查找就可以通過(guò)學(xué)生名字(key)來(lái)查找到對(duì)應(yīng)的成績(jī)了(value)。若是數(shù)據(jù)是無(wú)重復(fù)的而且不允許用戶(hù)隨便修改,則可以考慮使用set。
注:小白一枚,也是剛剛學(xué)完了這四個(gè)類(lèi)型,望指教,若有錯(cuò)漏請(qǐng)多多包涵指正。
添加回答
舉報(bào)