fbpx

前言

為什麼需要字典:

Python中存儲一組相關的數據,例如:存儲一個人的資料,資料中有nameagebirthday等…。如果這些資訊都存儲在列表或元組中:比如[ ‘name’, ‘age’, ‘birthday’ ],想獲取name,需先知道其在列表中的索引值,那麼使用起來就不是很方便。比較方便的操作為:直接透過 name 這個關鍵字就可以取得值,那麼就可以利用字典的方式實現這樣的需求。

 

大綱

  • 字典基礎
  • 常用操作

 

一.字典基礎

1. 創建字典:

    字典內儲存元素的方式是以鍵(Key) – 值(Value)對來保存,共有以下兩種方式:

  • 方式一:利用大括號 {  } 來創建字典
  • 方式二:利用dict函數

 

如下:

字典中的Key可以是任意的不可變類型,例如:浮點數、整數、字符串或者元組。

其中,每一個Key都有自己相對應的Value,例如:name(Key)對應到Amy(Value)。

用日常所見的方式來比喻:Key和Value的關係就好比鑰匙與門鎖,每一把鑰匙都有自己相對應的門鎖。

 

2.獲取Key對應的Value(值):

 取得字典元素值的方法是以Key作為索引取得Value

※注意:

由於字典是使用Key做為索引來取值,因此Key必須是唯一,而Value 則可以重複。

上面範例可以看出:name這個Key重複了,而後面的鍵會覆蓋前面的,因此打印出Ben。

另外,若輸入不存在的Key,代碼會報錯(如下圖):

 

 

 

 

二.常用操作

 

1. 新增:設定新的鍵與值

 

 2. 刪除:

  • 刪除特定元素
  • 刪除所有元素:
  • 刪除字典:

此時print會出現問題:

使用del方法會將字典整個刪除,等於前面定義的age字典已不存在。若要打印,程序將會顯示age這個字典沒有被定義而報錯。

 

 3. 修改:直接對Key定義新的值

 

 4. for循環取值:

  • 使用keys方法,將所有的鍵返回
  • 使用values方法,將所有的值返回
  • 使用items方法,將所有的鍵和值返回

 

celia

celia

人生苦短,我用Python !

Leave a Reply