字典詳解(Python)

2021-08-19 04:15:58 字數 4047 閱讀 2828

1.字典dict的基本概念

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

字典的每個鍵值(key=>value)對用冒號(:)分割,每個對之間用(,)分割,整個字典包括在

花括號({})中

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

dic = 

print(dic,type(dic))

也可以存乙個以字典為元素的列表

dic = [,,]

print(dic)

[, , ]
2.字典的特點:

鍵值對,一定共同出現,不能只有乙個

不允許同乙個鍵出現兩次,建立時如果同乙個鍵被賦值兩次,後乙個值會被記住

dic = 

print(dic)

key必須是字串,value可以是任何物件:數值,字串,序列,字典

dic = }

print(dic)

, 'var2': 'hello'
字典是乙個無序集合,序列由於沒有key來做對應,所以以順序來對應值

所以字典沒有順序,序列有順序

dic['var5'] = '新增乙個值'  # 任意新增元素

dic['var4'] = '任意修改其中乙個值' # 任意修改元素

del dic['var1'] # 任意刪除元素

print(dic)

可以清空字典或者刪除字典

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

print(dic)

del dic # 刪除詞典

{}
3.申明字典:

最簡單直接的方式,手動書寫申明乙個字典變數,注意是:  不是=

dic =
dict()函式

dic = dict(m = 10 ,n = 'aa', h = [1,2,3])

print(dic)

dict()由序列生成乙個字典,巢狀序列,可以是list或者tuple

lst1=[("a","fff"),("b","ggg")]

lst2=[["c",1],["d",2]]

lst3=(("e",[1,2]),("f",[3,4]))

dic1 = dict(lst1)

dic2 = dict(lst2)

dic3 = dict(lst3)

print(dic1,dic2,dic3)

只有key,直接生成乙個字典

keys = ["a", "b", "c"]

dic1 = dict.fromkeys(keys)

dic2 = dict.fromkeys(keys, 'hello')

print(dic1,dic2)

4.字典常用操作:

dict.update()方法:更新/合併乙個字典,把第二個字典合併到第乙個字典,改變了第乙個字典

dic1 = 

dic2 =

dic1.update(dic2)

print(dic1,dic2)

和序列的原理一樣,a和b指向同乙個字典,所以會一起更新

a = 

b = a

a.update()

print(a,b)

通過.copy()方法,複製乙個新的字典

a = 

b = a.copy()

a.update()

print(a,b)

檢視字典元素個數

print(len(a))
4
in/not in:判斷是否包含,這裡的判斷物件是key

print('m' in a)

print(1 in a)

true

false

5.字典的元素訪問:

字典沒有順序,以key作為指向,所以指向key必須存在

dic = 

print(dic['a'])

1
對於巢狀字典,輸出巢狀內容,通過重複指向來輸出

poi = }

print(poi['information']['address'])

somewhere
.get(key)方法:直接檢視key的value,如果沒有相應的key,則返回none,新增print引數可以多返回乙個值

print(poi.get('name'))

print(poi.get('type',print('nothing')))

shop

nothing

none

.keys()方法:輸出字典所有key,格式為檢視,可以用list()得到key的列表

print(poi.keys(),type(poi.keys()))

print(list(poi.keys()))

dict_keys(['information', 'name', 'city']) ['information', 'name', 'city']
.values()方法:輸出字典所有values,格式為檢視,可以用list()得到values的列表

print(poi.values(),type(poi.values()))

print(list(poi.values()))

dict_values([, 'shop', 'shanghai']) [, 'shop', 'shanghai'
.items()方法:輸出字典所有items,格式為檢視,可以用list()得到items的列表

print(poi.items(),type(poi.items()))

print(list(poi.items()))

dict_items([('information', ), ('name', 'shop'), ('city', 'shanghai')]) [('information', ), ('name', 'shop'), ('city', 'shanghai')]
6.字典的元素遍歷:

poi = }

for key in poi.keys():

print(key)

print('-------')

for value in poi.values():

print(value)

print('-------')

for (k,v) in poi.items():

print('key為 %s, value為 %s' %(k,v))

print('-------')

information

name

city

-------

shop

shanghai

-------

key為 information, value為

key為 name, value為 shop

key為 city, value為 shanghai

-------

python 字典詳解

儲存人名,身高,體重,年紀 需要了解的 1.pop通過key取出value eg info res info.pop name print info print res 吉喆 2.clear清空字典 eg info info.clear print info 3.popitem取出key value...

Python 字典詳解

目錄 字典在 python 中是乙個無序的資料集合,字典使用鍵值對進行儲存。dict dict print dict print type dict dict dict print dict print type dict dict print dict 察查司 陸之道 dict print dic...

python字典型別詳解

info 字典由鍵值對組成 info info info 新增 info age 18 info qq 1281636415 新增只要key不存在就是新增 修改 info qq 128429724242 修改只要key存在就修改 刪除 del info qq 當不存在要刪的key就會出錯 查詢 in...