您好,登錄后才能下訂單哦!
這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)?lái)有關(guān)python中列表,元組 ,集合 ,字典之間有什么區(qū)別,文章內(nèi)容豐富且以專(zhuān)業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
一、列表
1.任意對(duì)象的有序集合
列表是一組任意類(lèi)型的值,按照一定順序組合而成的
2.通過(guò)偏移讀取
組成列表的值叫做元素(Elements)。每一個(gè)元素被標(biāo)識(shí)一個(gè)索引,第一個(gè)索引是0,序列的功能都能實(shí)現(xiàn)
3.可變長(zhǎng)度,異構(gòu)以及任意嵌套
列表中的元素可以是任意類(lèi)型,甚至是列表類(lèi)型,也就是說(shuō)列表可以嵌套
4.可變的序列
支持索引、切片、合并、刪除等等操作,它們都是在原處進(jìn)行修改列表
5.對(duì)象引用數(shù)組
列表可以當(dāng)成普通的數(shù)組,每當(dāng)用到引用時(shí),Python總是會(huì)將這個(gè)引用指向一個(gè)對(duì)象,所以程序只需處理對(duì)象的操作。當(dāng)把一個(gè)對(duì)象賦給一個(gè)數(shù)據(jù)結(jié)構(gòu)元素或變量名時(shí),Python總是會(huì)存儲(chǔ)對(duì)象的引用,而不是對(duì)象的一個(gè)拷貝
二、元組
1.任意對(duì)象的有序集合
與列表相同
2.通過(guò)偏移存取
與列表相同
3.屬于不可變序列類(lèi)型
類(lèi)似于字符串,但元組是不可變的,不支持在列表中任何原處修改操作,不支持任何方法調(diào)用
4.固定長(zhǎng)度、異構(gòu)、任意嵌套
固定長(zhǎng)度即元組不可變,在不被拷貝的情況下長(zhǎng)度固定,其他同列表
5.對(duì)象引用的數(shù)組
與列表相似,元祖是對(duì)象引用的數(shù)組
和list相比
1.比列表操作速度快
2.對(duì)數(shù)據(jù)“寫(xiě)保護(hù)“
3.可用于字符串格式化中
4.可作為字典的key
三、字典
1.通過(guò)鍵而不是偏移量來(lái)讀取
字典就是一個(gè)關(guān)聯(lián)數(shù)組,是一個(gè)通過(guò)關(guān)鍵字索引的對(duì)象的集合,使用鍵-值(key-value)進(jìn)行存儲(chǔ),查找速度快
2.任意對(duì)象的無(wú)序集合
字典中的項(xiàng)沒(méi)有特定順序,以“鍵”為象征
3.可變長(zhǎng)、異構(gòu)、任意嵌套
同列表,嵌套可以包含列表和其他的字典等
4.屬于可變映射類(lèi)型
因?yàn)槭菬o(wú)序,故不能進(jìn)行序列操作,但可以在遠(yuǎn)處修改,通過(guò)鍵映射到值。字典是唯一內(nèi)置的映射類(lèi)型(鍵映射到值的對(duì)象)
5.對(duì)象引用表
字典存儲(chǔ)的是對(duì)象引用,不是拷貝,和列表一樣。字典的key是不能變的,list不能作為key,字符串、元祖、整數(shù)等都可以
和list比較,dict有以下幾個(gè)特點(diǎn):
1.查找和插入的速度極快,不會(huì)隨著key的增加而增加
2.需要占用大量的內(nèi)存,內(nèi)存浪費(fèi)多
而list相反:
1.查找和插入的時(shí)間隨著元素的增加而增加
2.占用空間小,浪費(fèi)內(nèi)存很少
所以,dict是用空間來(lái)?yè)Q取時(shí)間的一種方法
四、集合
1.是一組key的集合,但不存儲(chǔ)value,并且key不能重復(fù)
創(chuàng)建一個(gè)set,需要提供一個(gè)list作為輸入集合,s = set([1,2,3]),注意,傳入的參數(shù) [1, 2, 3] 是一個(gè)list,而顯示的 set([1, 2, 3]) 只是告訴你這個(gè)set內(nèi)部有1,2,3這3個(gè)元素,顯示的[ ]不表示這是一個(gè)list
2.重復(fù)元素在set中自動(dòng)被過(guò)濾
set可以看成數(shù)學(xué)意義上的無(wú)序和無(wú)重復(fù)元素的集合,因此,兩個(gè)set可以做數(shù)學(xué)意義上的交集、并集等操作
還有一種集合是forzenset( ),是凍結(jié)的集合,它是不可變的,存在哈希值,好處是它可以作為字典的key,也可以作為其它集合的元素。缺點(diǎn)是一旦創(chuàng)建便不能更改,沒(méi)有add,remove方法
和dict對(duì)比
1.set和dict的唯一區(qū)別僅在于沒(méi)有存儲(chǔ)對(duì)應(yīng)的value
2.set的原理和dict一樣,同樣不可以放入可變對(duì)象,因?yàn)闊o(wú)法判斷兩個(gè)可變對(duì)象是否相等,也就無(wú)法保證set內(nèi)部“不會(huì)有重復(fù)元素”
上述就是小編為大家分享的python中列表,元組 ,集合 ,字典之間有什么區(qū)別了,如果剛好有類(lèi)似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。