Python數(shù)據(jù)集合類型
一假栓、list類型
1.Python內(nèi)置的一種數(shù)據(jù)類型是列表:list柠硕。list是一種有序的集合飒货,可以隨時(shí)添加和刪除其中的元素妖枚。
2.構(gòu)造list非常簡單廷臼,直接用[ ]把list的所有元素都括起來,就是一個(gè)list對象。
3.由于Python是動(dòng)態(tài)語言荠商,所以list中包含的元素并不要求都必須是同一種數(shù)據(jù)類型寂恬,我們完全可以在list中包含各種數(shù) ? ? ?據(jù)。
4.可通過索引對list進(jìn)行訪問结啼,如list[0],list[1]....也可以通過list[-1]——倒數(shù)第一個(gè)掠剑,此種形式進(jìn)行倒序訪問。
5.可通過list.append()對list進(jìn)行尾部追加元素郊愧,也可以通過list.insert(index,元素)在指定索引下插入元素。
6.可通過list.pop()方法對list尾部最后一個(gè)key元素進(jìn)行刪除井佑,也可以通過list.pop(index)傳入的索引刪除指定位置的元素属铁。
注:pop()方法在刪除元素的同時(shí)還會(huì)返回刪除的元素。
7.可通過‘list[index]=元素’這種形式進(jìn)行元素替換躬翁。
二焦蘑、tuple類型
1.tuple是另一種有序的列表,中文翻譯為“ 元組 ”盒发。tuple 和 list 非常類似例嘱,但是,tuple一旦創(chuàng)建完畢宁舰,就不能修改了拼卵。
2.創(chuàng)建tuple和創(chuàng)建list唯一不同之處是用( )替代了[ ]。
3.既然tuple不能修改蛮艰,那么tuple也就沒有諸腋腮。如append(),pop()壤蚜,insert()之類的增加刪除元素方法了即寡。
4.注:創(chuàng)建單元素tuple的形式為tuple=(元素,),逗號(hào)是關(guān)鍵。
5.雖然tuple是不可變的袜刷,但是里面作為元素的list確是可以變的聪富,原因在于tuple所謂的不變指的是地址指向不變。
三著蟹、dict類型
1.Python內(nèi)置了字典:dict的支持墩蔓,dict全稱dictionary,在其他語言中也稱為map草则,使用鍵-值(key-value)存儲(chǔ)钢拧,具有極快的查找速度。
2.dict表達(dá)式:dict={key:value炕横,....}源内,可通過方法len(dict)獲取其長度。 注:len()方法也可獲取list,tuple膜钓,set集合的長度嗽交。
3.dict里通過key來獲取value,只要key存在就會(huì)返回對應(yīng)的value颂斜,如果key不存在會(huì)直接報(bào)錯(cuò):KeyError夫壁。注:如果想避免異常可以先通過if key in dict: print(dict[key])來進(jìn)行規(guī)避沃疮,如果存在輸出true盒让;如果不存在,輸出false司蔬。也可以通過dict.get(key)方法來獲取value邑茄,如果可以不存在則返回None。
4.dict查找速度快俊啼,無論dict有10個(gè)元素還是10萬個(gè)元素肺缕,查找速度都一樣,但這也是有代價(jià)的授帕,dict內(nèi)存占用率很大同木,且dict的key值是不能重復(fù)的。
5.dict是無序的跛十,且key必須是不可變的彤路,Python的基本類型如字符串、整數(shù)偶器、浮點(diǎn)數(shù)都是不可變的斩萌,都可以作為 key。但是list是可變的屏轰,就不能作為 key颊郎。
6.dict可通過dict[key]=value來更新數(shù)據(jù),如果key存在霎苗,則替換對應(yīng)的value姆吭;如果不存在,則添加新的鍵值對唁盏。
三内狸、set類型
1.set 持有一系列元素,這一點(diǎn)和 list 很像厘擂,但是set的元素沒有重復(fù)昆淡,而且是無序的,這點(diǎn)和 dict 的 key很像刽严。
2.表達(dá)式:s = set(['A', 'B', 'C'])
3.set不能包含重復(fù)的元素昂灵,如果傳入一個(gè)帶有重復(fù)元素的list,那么set會(huì)將其重復(fù)的元素剔除。
4.set無法通過索引來對其中的元素進(jìn)行訪問眨补,但可以通過操作符in來判斷元素是否存在與set集合中管削。
5.可以通過for in 語句來對其遍歷。
6.可以通過add()方法對set添加元素撑螺,如果set中無此元素含思,則直接添加;若有甘晤,便不會(huì)添加含潘。可通過remove()方法對set中的元素進(jìn)行移除安皱,但在remove()方法前需要判斷元素是否存在调鬓,否則若無此元素,remove()方法會(huì)報(bào)錯(cuò)酌伊。
暫時(shí)寫到這了,以后如果遇到其他情況再繼續(xù)追加吧~~