資料型別 字典

2021-09-12 12:18:56 字數 3366 閱讀 3792

字典是另一種可變容器模型,且可儲存任意型別物件。

字典的每個鍵值(key=>value)對用冒號(:)分割,每個對之間用逗號(,)分割,整個字典包括在花括號({})中 ,格式如下所示:

d = ,

print(d)

執行結果:

鍵必須是唯一的,但值則不必。

值可以取任何資料型別,但鍵必須是不可變的,如字串,數字或元組。

乙個簡單的字典例項:

#   例1

dict =

print(dict)

# 例2

dict1 =

dict2 =

print(dict1,dict2)

執行結果:

把相應的鍵放入到方括號中,如下例項:

dict = 

print("dict['name']: ", dict['name'])

print("dict['age']: ", dict['age'])

執行結果:

如果用字典裡沒有的鍵訪問資料,會輸出錯誤如下:

向字典新增新內容的方法是增加新的鍵/值對,修改或刪除已有鍵/值對如下例項:

dict = 

dict['age'] = 8; # 更新 age

dict['school'] = "清華" # 新增資訊

print("dict['age']: ", dict['age'])

print("dict['school']: ", dict['school'])

以上例項輸出結果:

dict['age']:  8

dict['school']: 清華

能刪單一的元素也能清空字典,清空只需一項操作。

顯示刪除乙個字典用del命令,如下例項:

dict = 

del dict['name'] # 刪除鍵 'name'

dict.clear() # 清空字典

del dict # 刪除字典

print("dict['age']: ", dict['age'])

print("dict['school']: ", dict['school'])

但這會引發乙個異常,因為用執行 del 操作後字典不再存在:

traceback (most recent call last):

file "test.py", line 9, in print ("dict['age']: ", dict['age'])

typeerror: 'type' object is not subscriptable

字典值可以是任何的 python 物件,既可以是標準的物件,也可以是使用者定義的,但鍵不行。

兩個重要的點需要記住:

1)不允許同乙個鍵出現兩次。建立時如果同乙個鍵被賦值兩次,後乙個值會被記住,如下例項:

dict = 

print("dict['name']: ", dict['name'])

以上例項輸出結果:

dict['name']:  小劉
2)鍵必須不可變,所以可以用數字,字串或元組充當,而用列表就不行,如下例項:

dict = 

print("dict['name']: ", dict['name'])

以上例項輸出結果:

traceback (most recent call last):

file "test.py", line 3, in dict =

typeerror: unhashable type: 'list'

python字典包含了以下內建函式:

序號函式及描述例項1

len(dict)

計算字典元素個數,即鍵的總數。

>>> dict = 

>>> len(dict)

3

2str(dict)

輸出字典,以可列印的字串表示。

>>> dict = 

>>> str(dict)

""

3type(variable)

返回輸入的變數型別,如果變數是字典就返回字典型別。

>>> dict = 

>>> type(dict)

python字典包含了以下內建方法:

序號函式及描述

1radiansdict.clear()

刪除字典內所有元素

2radiansdict.copy()

返回乙個字典的淺複製

3radiansdict.fromkeys()

建立乙個新字典,以序列seq中元素做字典的鍵,val為字典所有鍵對應的初始值

4radiansdict.get(key, default=none)

返回指定鍵的值,如果值不在字典中返回default值

5key in dict

如果鍵在字典dict裡返回true,否則返回false

6radiansdict.items()

以列表返回可遍歷的(鍵, 值) 元組陣列

7radiansdict.keys()

返回乙個迭代器,可以使用 list() 來轉換為列表

8radiansdict.setdefault(key, default=none)

和get()類似, 但如果鍵不存在於字典中,將會新增鍵並將值設為default

9radiansdict.update(dict2)

把字典dict2的鍵/值對更新到dict裡

10radiansdict.values()

返回乙個迭代器,可以使用 list() 來轉換為列表

11pop(key[,default])

刪除字典給定鍵 key 所對應的值,返回值為被刪除的值。key值必須給出。 否則,返回default值。

12popitem()

隨機返回並刪除字典中的一對鍵和值(一般刪除末尾對)。

資料型別 字典

list不好存資訊 所以用字典,key value的形式進行儲存 infos name 33 name7 3uu3 infos.get name 取值 get方法 info name 取值 方法 info.values 獲取所有的value info.keys 獲取所有的key info.items...

python 資料型別(字典型別)

字典型別 dict 作用是 記錄多個 key value 值,優勢是每乙個值 value 都有其對應關係 對映關係 key,而 key對 value 有描述性的功能 定義 1 基本使用 dict 用途 記錄多個值,每乙個值對應的 key 用來描述 value 的作用 在 內用逗號分隔開多個 key ...

Python資料型別 字典

字典 字典是無序的,它不能通過偏移來訪問,只能通過鍵來訪問。字典 key 類似我們現實的鑰匙,而value則是鎖。乙個鑰匙開乙個鎖 特點 內部沒有順序,通過鍵來讀取內容,可巢狀,方便我們組織多種資料結構,並且可以原地修改裡面的內容,屬於可變型別。組成字典的鍵必須是不可變的資料型別,比如,數字,字串,...