基本資料型別 字典 Dictionary

2022-08-20 10:15:11 字數 4121 閱讀 9850

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

值可以取任何資料型別,也可以巢狀多層,但鍵必須是不可變的,如字串,數字或元組,這些鍵會轉為hash值儲存起來;鍵不可以是列表,布林值,字典,因為這些不可以轉為hash值儲存起來

。字典是無序的,每次用print函式輸出的結果順序都不一定相同。

字典的每個鍵值

key=>value

info = 

鍵 值 鍵 值

info =

],"k4

": (11,22,33,44)

}v = info['k1'

]print

(v)v = info[2]

print

(v)v = info['

k3'][5]['

kk3'

][0] ##多層巢狀的取值

print(v)

輸出:

18

true

11

info = 

],"k4

": (11,22,33,44)

}輸出:], '

k4': (11, 22, 33, 44)}

info =

],"k4

": (11,22,33,44)

}for item in

info:

print(item) #

#預設輸出所有的key

for item in

info.keys():

print(item) #

#輸出所有的key

for item in

info.values():

print(item) #

#輸出所有的values

for item in

info.keys():

print(item,info[item]) #

#輸出所有的key,並使用索引同時輸出key所對應的value

for k,v in

info.items():

print(k,v) #

#同時取出key和value,分別賦值給k和v,然後輸出

輸出:

k12k3

k4k12k3

k418

true

[11, , (), 22, 33, ]

(11, 22, 33, 44)

k1 18

2 true

k3 [11, , (), 22, 33, ]

k4 (11, 22, 33, 44)

k1 18

2 true

k3 [11, , (), 22, 33, ]

k4 (11, 22, 33, 44)

內建函式

內建方法

1.根據序列,建立字典,並指定統一的值

v = dict.fromkeys(["

k1",123,"

999"],123) #前邊的列表是所有的key, 後邊的123是值,將分別賦給三個key,即三個key的value都是123

print(v)

輸出:

2.根據key獲取值,key不存在時,可以指定預設值(none)

dic =

#v = dic['k11']

#print(v) ##使用索引,當key 'k11' 不存在時就會報錯,所以該方法有弊端

#v = dic.get('k11')

#print(v) ##使用get方法,當key不存在時會輸出none

#v = dic.get('k11',123)

#print(v) ##get方法可以新增兩個引數,當指定的key不存在時,get方法會將括號內的第二個引數賦給key,當key已經存在時,第二個引數將會失效

3.刪除

dic =

v = dic.pop('k1'

) ##將取出的k1的值賦給v

print

(dic,v)

dic =

v = dic.pop('

k11',90) ##當指定的key(k11)存在時,指定的value(90)會失效,k11不存在時,v等於指定的value90

print(dic,v)

輸出:

dic =

k,v =dic.popitem() ##隨機刪除一對

print(dic,k,v)

輸出:

4 .設定值

已存在,不設定,獲取當前key對應的值

不存在,設定,獲取當前key對應的值

dic =

v = dic.setdefault('

k1','

123') #

#當key存在時,後邊指定的值會失效

print

(dic,v)

v = dic.setdefault('

k11','

123'

)print(dic,v)

輸出:

5.更新(update)

dic =

dic.update() #

#已存在的更新,不存在的加上去

print

(dic)

dic.update(k1=123,k3=345,k5="

asdf")

print(dic)

輸出:

1.字串

tempalte = "

i am , age : "#

v = tempalte.format(name='alex',age=19) ##和下面的方法效果相同

v = tempalte.format(**) #

#加入兩個**即可將字典加入 print(v)

輸出:

2.字典

使用in時:

dic = 

v = 'k1'

indic

print(v) ##輸出true

v = 'v1'

indic

print(v) ##輸出false

判斷values時,使用v

= 'v1' in dic.values()

3.布林值

bool值只有 false(0) 和true(1) 兩種

bool(...)經常用來判斷真假

bool值為false常見的有:0 、none、空字串、空字典、空列表、空元組,

其他都是true

Python的基本資料型別 Dictionary

字典是一組無序的集合,由key和vlaue組成,通過key對映你想要儲存或者獲取的內容,python中的字典就像現實世界中的字典一樣,都可以通過索引找到對應的值 字典的建立方式和集合一樣,也是在 中用逗號隔開每組元素,不同的是字典中的每組元素有key value組成,其中key是唯一的而且是不可變型...

基本資料型別 字典

字典 dict 是python中唯 的 個對映型別.他是以括起來的鍵值對組成.在dict中key是 唯 一的.在儲存的時候,根據key來計算出 乙個記憶體位址.然後將key value儲存在這個位址中.這種演算法被稱為hash演算法,所以,切記,在dict中儲存的key value中的key 必須是...

Python基本資料型別 字典

字典是python的另一種有序的可變資料結構,且可儲存任意型別物件。字典是一種鍵值對的資料容器,每個鍵值 key value 對用冒號 分割,每個對之間用逗號 分割,整個字典包括在花括號 中。鍵和值兩者一一對應,與表不同的是,詞典的元素沒有順序,不能通過下標引用元素。字典是通過鍵來引用。字典中的鍵必...