python中列表 元組 字典 集合的區別

2021-09-03 02:18:18 字數 3261 閱讀 4722

列表元組

集合字典

英文list

tuple

setdict

定義定義,資料之間使用,分割

定義(),資料之間用,分割

定義用 {} 或 set()

字典的每個鍵值 key=>value 對用冒號 : 分割,每個鍵值對之間用逗號 , 分割

是否可讀寫

讀寫唯讀

讀寫讀寫

可否重複是是

否是資料型別

任意型別物件

任意型別物件

任意型別物件

任意型別物件

儲存方式值值

鍵(不能重複)

鍵值對(鍵不能重複)

是否有序

有序有序

無序無序,自動正序

初始化[1,'a']

(1,'a')

空值的定義

或者 list()

()或 tuple()

set()

{}或者dict()

支援的操作

索引,切片,合同,刪除,修改

索引s | t 並   s - t 差

s & t 交  s ^ t 補

s <= t 或 s < t

s >= t 或 s > t

s |= t 並

s &= t 交

s ^= t 補

增、刪、改、查

key in d:鍵值key是否在d中,是返回true,否則返回false。

讀取通過偏移讀取

通過偏移讀取

s.pop()隨機返回s的乙個元素,更新s,若s為空產生keyerror異常

通過鍵而不是偏移量來讀取

查 get(),setdefault(),has_key()

通過dict提供的get()方法,如果key不存在,可以返回none,或者自己指定的value

d[k]:返回關鍵字對於的值

新增會把新增的資料放在列表中的最後乙個位置

insert(index,object)函式 向列表中插入一條資料

extend(iterable)函式  可以將另外乙個列表中的資料新增到該表中

iterable:可迭代物件  列表、字串、字典、元組

不能修改

s.add(x) 如果x不在集合s中,將x增加到s

d['***'] = 'man'

修改列表[索引]=資料 classname[1]='new'

index(object:資料, start:開始搜尋的位置,stop:結束搜尋的位置) 

不能修改

集合元素不可更改

d['age'] = 8;

刪除pop刪除末尾元素 classname.pop()

pop刪除指定元素pop(i) classname.pop(1)

del list_1[4]

使用remove(object)函式,根據資料內容刪除  要刪除的內容必須在列表中,否則會報錯

移除列表中所有的資料

list_1.clear()

不能修改

s.discard(x)移除s中元素x,如果x不在集合s中,不報錯

s.remove(x)移除s中元素x,如果x不在集合s中,產生keyerror異常

s.clear()移除s中所有元素

刪 pop()

'''通過指定的key值,刪除字典的乙個鍵值對

返回被刪除的key對應的value

del dict['name']; # 刪除鍵是'name'的條目

dict.clear();     # 清空詞典所有條目

del dict ;        # 刪除詞典

排序公升序  列表.sort()

降序 列表.sort(reverse=true)

倒序,反轉 列表.reverse()

不能修改無無

統計len(列表) 列表的長度

列表.count(資料)  資料在列表中出現的次數

len(元組) 元組的長度

列表.count(資料)  資料在元組中出現的次數

len(s)返回集合s的元素個數

len():返回字典中鍵—值對的數量

應用場景

1、列表儲存相同型別的資料

2、通過迭代遍歷,在迴圈內部,

針對列表中的每一項元素,執行相同的操作

1.查詢和插入的時間隨著元素的增加而增加 

2.占用空間小,浪費記憶體很少 

所以,dict是用空間來換取時間的一種方法

1、函式的引數和返回值,乙個函式可以接收任意多個引數,一次返回多個資料

2、格式字串,格式化字串後面的()本質就是乙個元組

3、讓列表不可以被修改(保護資料安全)

1.比列表操作速度快 

2.對資料「寫保護「 

3.可用於字串格式化中 

4.可作為字典的key

包含關係比較

x in s 判斷s中元素x, x在集合s中,返回true,否則返回false

x not in s

資料去重:集合型別所有元素無重複

set(x)將其他型別變數x轉變為集合型別

zip函式可以實現兩個類別組合成字典

1.查詢和插入的速度極快,不會隨著key的增加而增加 

2.需要占用大量的記憶體,記憶體浪費多 

序列 : 序列是乙個基類型別   可以衍生為字串型別、元組型別、列表型別

通用操作符: x in s 如果x是序列s的元素,返回true,否則返回false

x not in s 如果x是序列s的元素,返回false,否則返回true

s + t 連線兩個序列s和t

s*n 或 n*s 將序列s複製n次

s[i] 索引,返回s中的第i個元素, i是序列的序號

s[i: j] 或 s[i: j: k] 切片,返回序列s中第i到j以k為步長的元素子串行

通用方法和函式: len(s) 返回序列s的長度,即元素個數

min(s) 返回序列s的最小元素, s中元素需要可比較

max(s) 返回序列s的最大元素, s中元素需要可比較

s.index(x) 或

s.index(x, i, j) 返回序列s從i開始到j位置中第一次出現元素x的位置

s.count(x) 返回序列s中出現x的總次數

python列表 元組 字典 集合

列表list 用 表示,list是一種有序的集合,可以隨時新增和刪除其中的元素。元組tuple 用 表示,和列表類似,元組也是一種有序列表,雖然tuple和list非常之類似,但是list初始化之後使可以改變的,但是,元組一旦初始化之後就不可以改變。這點與python中的字串類似,所以我們說元組和字...

python列表 元組 字典 集合

一 列表 可變物件 1.列表的資料項不需要具有相同的型別 建立乙個列表,只要把逗號分隔的不同的資料項使用方括號括起來即可 list1 google runoob 1997,2000 print list1 0 list1 0 列表也可以使用切片 原來字串的切片這裡也可以用 print list 1 ...

Python 列表,元組,字典,集合

特點 順序,可新增,修改,刪除建立方法 x 1,2,3,4,5 x list 12345 x 0 1000 取值方法 x 1 2 x 1 方法 實現兩個列表相加 實現列表的複製後相加 value in sequence 檢驗該value是否在列表sequence中 remove value 刪除指定...