【Python教學】字典(dictionary)的建立與基本操作:key和value的用法與取得

一、字典(dictionary)物件的基本格式

Python中的字典物件格式有點類似javascript裡面的JSON格式,用大括號來建立,裡面有許多對的“鍵值-資料值”(key – value)

可以想像key就是欄位名稱,value就是這個欄位的資料。所以key值可以是’身高’,value是170;或者key值是’先發選手’,value是一個陣列 [ ‘kenny’ , ‘jenny’ , ‘lenny’ ]。

dict = { 'key' : value }

二、字典裡面的key和value

key值會用文字來表示,value則可以是各種資料型態,甚至value也可以是一個字典。而key值就相當於是value的ID,也就是整個字典的索引,通常也都會透過指定key值的方式來取得value。

表示方式 : key : value (key值,冒號,value值)

例如,我們可以建立一個叫做apple的字典,apple有名字和顏色兩個key,對應到的value分別是apple和yellow。

亦即:

apple的name = ‘apple’

apple的color = ‘yellow’

apple = { 'name':'apple' , 'color':'yellow' }

三、取得key和value的方式

我們會用指定位置的方式來取得陣列的值,例如 array[0] 或 array[1] ,要取得字典的value的方式也是類似,只不過這邊不是用位置,而是用key值當索引

(一)取得指定key值的value

例如,我們要取得前述apple物件的顏色(color),那麼,我們只要指定 apple[‘color’] 就可以取得。

apple = { 'name':'apple' , 'color':'yellow' }
print( apple['color'] )
結果 :
'yellow'

(二)取得所有key值

keys()會回傳字典的所有key值,不過這邊要注意到不能直接以陣列的方式來操作回傳結果。

apple = { 'name':'apple' , 'color':'yellow' }
print( apple.keys() )
結果 :
dict_keys(['name', 'color'])

想要以陣列的方式操作keys()的回傳結果,只要再將回傳結果用list()轉為陣列即可。

print( list( apple.keys() ) )
結果 :
['name', 'color']

(三)取得有所value值

values()會回傳字典的所有value值,不過這邊要注意到不能直接以陣列的方式來操作回傳結果。

apple = { 'name':'apple' , 'color':'yellow' }
print( apple.values() )
結果 :
dict_values(['apple', 'yellow'])

想要以陣列的方式操作values()的回傳結果,只要再將回傳結果用list()轉為陣列即可。

print( list( apple.values() ) )
結果 :
['apple', 'yellow']

(四)取得每一對key和value

如果要取每一對key和value的值,則可以對字典的所有item來做迴圈。語法是 dict.items()。

一樣以apple物件為例,分別用 k , v 兩個變數來代表key和value,來取得apple.items()裡面的每一組key和value,範例如下:

apple = { 'name':'apple' , 'color':'yellow' }
for k , v in apple.items():
    print( k , v )

第一組key和value是’name’:’apple’,所以會先印出 name ,以及 apple。同理,印出第二組的 color 和 yellow 。

結果 :
name apple
color yellow

小額支持鍾肯尼

如果我的文章有幫助到你,歡迎你點這裡開啟只要40元的小額贊助連結,可以贊助我一杯咖啡錢;我會更有動力繼續寫作,幫助大家解決更多問題。

發佈留言