Python容器資料型別 操作 比較

2021-09-19 22:51:15 字數 3950 閱讀 6299

1、列表是乙個有序集合,所有元素按照先後順序排序。即:先進來的站在最前頭

2、列表可以有 增、刪、查、改 的操作

3、列表可以對元素分配下標(索引、位置)

4、列表可以儲存任何型別的資料或容器

5、定義列表:變數名=[值1,值2,值3,...,值n]

6、定義空列表:變數名=

1、列表[下標]=值

2、列表[切片]=值 (這種操作會將指定的列表片段更換我指定的值,但是賦值號郵編必須是乙個可迭代物件,並且切片長度可以和可迭代物件的長度不一致,因此,這種操作也有可能改變列表的長度)

1、列表pop()

刪除末尾元素,並返回此值,

2、列表pop(下標)

根據下標刪除,並返回此值

3、del 列表[下標]

根據元素下標刪除,無返回值

4、列表.clear()

清空列表

1、列表[下標]

根據下標查詢值,引用該值

2、列表.index(值)

根據值查詢其在列表中的位置(下標),並返回該下標,若有多個該值,則返回第乙個索引

3、列表.count(值)

統計該值在列表**現的次數並改回統計結果

4、len(列表)

計算列表長度,並返回該長度值

5、max(列表)、min(列表)

查詢列表最大值、最小值,並返回該值

但列表中的值必須是同型別的資料,例如:都是數字,或者都是字母,或者都是列表或者都是元組

1、in

2、not in

判斷元素是否存在於列表中

1、重複列表  * 、+

+表示將兩個列表組合成乙個列表

*表示將乙個列表中的元素重複多次

1、列表.reverse()

反轉列表元素,對原列表直接操作,返回空值

2、列表.sort()

對原列表進行由小到大排序,屬於直接操作,返回空值

3、sorted(列表)

對引數列表進行排序,原列表不會變化,會返回乙個排序後的新列表

1、列表[num1:num2:num3]

num1 表示起始位置,num2 表示終止位置,num3 表示步長

預設值:num1 = 0 num2 =列表長度,num3 = 1 

num2 位置元素不會包含在內

1、while 迴圈使用下標遍歷

2、for 迭代迴圈遍歷

1、元組是乙個有序容器,可按下標查詢值

2、元組=操作受限的列表。元組不可增、刪、改。但可以查詢。

1、列表=list(元組)

2、元組=tuple(列表)

3、以上兩種操作都是返回乙個新的列表、元組,並不會改變原來的 ,實現列表,元組之間的相互轉換。

1、使用大括號括起來,使用鍵值對進行儲存

2、具有極快的查詢速度

3、只能根據 鍵 查詢對應的 值

4、定義空字典:a={}

5、定義字典:a=

6、鍵 (key)必須是不可變型別:如字串,數字,元組。

7、鍵 必須是唯一的,不可以重複

8、值可以是任意型別的資料或容器

9、鍵值對的儲存順序是無序的,即:存放順序與放入順序是沒有關係的

1、字典[鍵]=值

1、若字典裡已經有該鍵值,則會將原有的覆蓋,即實現了字典的修改

2、若字典裡沒有該鍵,則會新增改鍵並賦值

1、字典.pop(鍵)

將該鍵對應的值刪除並返回該值

2、del 字典[鍵]

根據鍵刪除值,返回空型別(無返回值)

3、字典.popitem()

隨機刪除乙個

4、字典.clear()

清空字典

1、字典[鍵]

根據鍵查詢值,並返回

2、字典.get(鍵,[預設值])

通過字典中的 get 方法查詢對應的鍵值,如果沒有該鍵值則返回none或者自己設定的預設值

3、len(字典)

求字典長度,乙個鍵值對佔據乙個長度

4、str(字典)

字典轉化為字串顯示

5、dict.keys()

把字典中的所有鍵值,收集為乙個列表並改回該列表,但該列表型別為:class'dict_keys',和 list 型別不一樣

5、dict.values()

把字典中的所有值,收集為乙個列表並返回該列表,但其型別為:class'dict_values'

5、dict.items()

把字典中的所有鍵值對,收集為乙個列表並返回該列表,但其型別為:class'dict_items'

6、以上三中型別是字典中的內建函式,返回的資料並不是嚴格意義上的列表,因為返回的資料無法使用列表的內建方法

1、in

2、not in

3、判斷字典鍵、值或者鍵值對是否在字典中   a in dict

1、for key in dict.keys():

print('%s-->%s'%(key,dict[key]))

通過遍歷鍵,遍歷字典

2、for key in dict():

print('%s-->%s'%(key,dict[key]))

3、for k,v in dict.items():

print('%s-->%s'%(k,v))

1、dict,copy()

返回乙個複製的字典,內容一樣,位址不同

2、dict.fromkeys(seq,[,values])

以 seq 序列中的元素作為鍵,values為值,建立乙個新的列表

3、dict.setdefault(key,default=none)

和get()類似, 但如果鍵不存在於字典中,將會新增鍵並將值設為default 如果鍵在字典中,返回這個鍵所對應的值。

如果鍵不在字典中,向字典中插入這個鍵,並且以default為這個鍵的值,並返回 default。default的預設值為none

4、dict.update(dict2)

把 dict2 中的鍵值對更新至 dict 中。

相當於列表中的 extend 函式

1、set是乙個無序,不能重複的集合容器,所以可以用來過濾重複元素。

2、定義空集和:a=set()    (注意不是 {} ,若是 a={} 則是建立空字典

3、定義集合:a=

4、集合中不能儲存不能進行雜湊計算的資料型別。如 列表、字典、甚至集合都不能存放在集合中

5、可進行雜湊運算的資料型別才可以儲存在集合中。如 數值型、字串、布林型別、空值型別、元組

1、set.add(值)

向集合中新增乙個元素

2、set.update(值)

將乙個可迭代的內容,一一加入,例如列表、元組、字典、集合、字串

注意:如果新增字典,則只會將 鍵 新增進去。

若果是字串,則會將每乙個字元逐個加入

1、set.remove(值)

移除指定的值。若值不存在,會報錯

2、set.discard(值)

同上,但值不存在不會報錯

3、set.pop()

隨機刪除乙個

4、set.clear()

清空集合

1、並集:|

2、交集:&   intersection

3、差集:-    different

4、判斷:in

5、聯合:union    例如;a.union(b) 合併a,b 並返回合併後的集合

6、子集:issubset    例如:a.issubset(b)   a是b的子集,返回布林值

7、父集:issuperset        例如:a.issuperset(b)   a是b的父級,返回布林值

1、列表查詢速度隨著元素的增多而增多,而字典以鍵查詢值,查詢速度極快

2、列表占用記憶體較小,而字典則占用較大記憶體(以空間換時間)

1、元組是被「束縛」著的列表

2、列表能進行的元素修改、增刪操作都無法在元組上實現

3、二者都可以用下標查詢元素

Python容器資料型別 collections

usr bin python coding utf 8 count物件 only 2.7 from collections import counter 統計字母出現的次數 counter hello world counter red blue red green blue blue 小於等於0的...

python 資料型別number操作

浮點型由整數部分與小數部分組成,浮點型也可以使用科學計數法表示 2.5e2 2.5 x 102 250 複數由實數部分和虛數部分構成,可以用a bj,或者complex a,b 表示,複數的實部a和虛部b都是浮點型。我們可以使用十六進製制和八進位制來代表整數 number 0xa0f 十六進製制 n...

Python資料型別及其操作

一 整數型別 1 無取值範圍限制 2 可用pow x,y 來計算x的y次方 二 浮點數型別 1 範圍存在限制,常規計算可忽略 2 取值範圍的數量級為10 307到10308,精度為10 16 3 浮點數計算會出現不確定小數的問題,所以要用round 函式進行四捨五入 round x,d 將x按四捨五...