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