自學python 7 字典

2021-10-04 04:51:37 字數 3813 閱讀 3260

特點:

1.符號:{}

2.關鍵字:dict

3.鍵值對儲存:key : value,每次新增都必須是成對新增的。

定義:

dict1 =

# 常用的空字典定義。

dict2 =

dict()

# 空字典,不常用。

dict3 =

鍵值對必須成對出現。

dict4 =

dict([

('name'

,'lucky'),

('age',18

)])建立過程,首先把列表拆開,兩個元組分別轉換成鍵值對,元組中的兩個元素第乙個作為key,第二個作為value,列表裡面只能有兩個元素。

增加元素:

dict6 =

dict6[

"brand"]=

"huawei"

print

(dict6)

dict6[

"brand"]=

"mi"

print

(dict6)

# #

如果key值存在就覆蓋,不存在就建立乙個key值,並且賦上value。

key在字典中是唯一的,value是不唯一的,很多key可以用乙個value,就像資料庫中的候選鍵和其他鍵的關係一樣。

查詢元素:

dict6 =

dict6[

"brand"]=

"huawei"

dict6[

"brand1"]=

"mi"

print

(dict6[

"brand1"])

# mi

print

(dict6[

"mi"])

# keyerror: 'mi'

字典中沒有下標,只有key可以被用作查詢。

dict6 =

dict6[

"brand"]=

"huawei"

dict6[

"brand1"]=

"mi"

for i in dict6:

print

(i)# brand

# brand1

字典允許遍歷,遍歷得到的是key值。

dict6 =

dict6[

"brand"]=

"huawei"

dict6[

"brand1"]=

"mi"

print

(dict6.items())

# dict_items([('brand', 'huawei'), ('brand1', 'mi')])

items是乙個dict的函式,把字典裡的key:value轉換為列表裡面以元組為元素的形式,每個元組有兩個值,乙個為key,乙個為value。

dict6 =

dict6[

"brand"]=

"huawei"

dict6[

"brand1"]=

"mi"

for key,value in dict6.items():

print

(key,value)

# brand huawei

# brand1 mi

由元組拆分的原則可以知道,key和value兩個元素接受乙個元組裡的兩個元素。

dict6 =

dict6[

"brand"]=

"huawei"

dict6[

"brand1"]=

"mi"

for i in dict6.values():

print

(i)# huawei

# mi

for i in dict6.keys():

print

(i)# brand

# brand1

keys:獲取字典中所有的key。

values:獲取字典中所有的value。

print

("brand"

in dict6)

print

("huawei"

in dict6)

# true

# false

用in查詢的時候要按照key搜尋。

print

(dict6.get(

"brand"))

print

(dict6.get(

"11111"))

# huawei

# none

get為dict的內建函式,根據key找到value,如果找不到也不會報錯,會返回none。

刪除元素

dict1 =

del dict1[

"a"]

print

(dict1)

# del dict1[

"d"]

keyerror:

'a'

1.根據key值刪除,如果key值在字典中不存在則會出現keyerror。

dict1.pop(

"b",0)

print

(dict1)

# print

(dict1.pop(

"d",0)

)# 0

2.pop(key[,default]),pop中的de****t是key值不在集合中的時候返回的東西。

dict1 =

dict1.popitem(

)print

(dict1)

# dict1.popitem(

)print

(dict1)

# dict1.popitem(

)print

(dict1)

# {}

隨機刪除元素,但是實際上是從末尾刪除。

clear與list的clear相同。

其他操作

dict1 =

dict2 =

dict1.update(dict2)

print

(dict1)

print

(dict2)

# #

update,返回值為none。相當於dict1 + dict2,但是字典不支援「 + 」操作

dict1 =

list1 =[1

,2,3

,4]dict1 = dict1.fromkeys(list1)

print

(dict1)

# dict1 = dict1.fromkeys(list1,0)

print

(dict1)

#

fromkeys可以把列表中的內容轉換成字典裡的key值,預設的value值為none。也可以附上乙個初值,使value全為初值。乙個dict進行fromkeys的時候,自身不會改變,而是會返回乙個返回值,上面**中dict1在進行fromkeys之後沒有改變,而是在為自身賦值時發生了變化。

Python自學3(字典)

1.像列表一樣,字典 是許多值的集合,但是不像列表的下標,字典的索引可以使用許多不同資料型別,不只是整數。字典的索引被稱為 鍵 鍵及其關聯的值稱為 鍵 值 對 2.字典中的表項是不排序的,不能像列表一樣進行切片。3.嘗試訪問字典中不存在的鍵,將導致keyerror出錯資訊 4.儘管字典時不排序的,但...

Python 自學筆記10 字典

1.字典的模板 dict1 key為鍵,value為值 2.字典的定義方式 1.利用工廠函式dict mydict1 dict a 1 b 2 c 3 d 4 2.利用 mydict2 3.字典元素的增加與刪除 1.增加元素 i.update 操作方法 此方法也可新增多個元素,用逗號隔開即可!upd...

python 基礎7 字典

主要方法 keys values items get update 基本結構 info 字典的value可以是任意值 布林值 列表 字典不能作為字典的key 字典無序 info k4 q w 55,66 true ww print info 通過索引查詢到指定元素 v info k3 print v...