Python Dictionary – (Python教學) – Dictionary 就是包含keys list 及 value list 的一個集合. 在集合中, 每一行的key也會Map在value上, 只需要加入Key就可取得值.
為何需要Dictionary?
- 有時候我們不需把一批資料作批次處理, 只需要把一個或一堆資料拿出來便可了, 這樣的話, 用List或Array會比較不便, 可能要加上MapReduce或for迴圈等, 程序碼會變長, 而也許會變慢. 這時, 這適合用Dictionary了.
Dictionary使用方法
- Dictionary 的主要用途就是用一個key來尋找值, 值可以是一個Array, 一個List或一個object instance.
- 以一個key來獲取一個, 或一堆值把資料的提取變得容易.
- 每個Key在Dictionary內須為唯一的
Dictionary使用例子
- AI Algorithm Param: 把自測試過的Param記在Dictionary, 再用固定格式把他存下來, 這樣隨時可用來用.
- IOT Temperature: 如果IOT Device 死機, 但又想保存日內最後的記錄, 可以試把DateTime做Key, 每隔分鐘存下來, 但記得要Save做File (Local做法), (Sever就可一lot地Save).
- Cache: 想要cache一個版面的初始值(session), 只需把page name 作key就可獲得. 這些都是不需要一批批地把資料處理而只需一個或一堆值的情況.
- Algorithm: 用在自己Program的Algorithm上, 做Cache, 以加快速度.
Dictionary的使用一覽表
本篇會介紹Dictionary的基本5種應用方法 – Dictionary初始化, Dictionary加入值, Dictionary更新值, Dictionary刪除值, Dictionary foreach迴圈. Let’s Start!
方法 | 例子: |
初始化1 | names = {} print(names); //{} |
初始化2 | names = {“Tim”:”Clerk”, “John”:”Manager”, “Mary”: “Boss”}; print(names); // { Tim: ‘Clerk’, John: ‘Manager’, Mary: ‘Boss’ } |
加入值 | names = {“Tim”:”Clerk”, “John”:”Manager”, “Mary”: “Boss”}; names[“Peter”] = “Cooker”; print(names); // { Tim: ‘Clerk’, John: ‘Manager’, Mary: ‘Boss’ , ‘Peter’: ‘Cooker’} |
獲得值 | names = {“Tim”:”Clerk”, “John”:”Manager”, “Mary”: “Boss”}; print(names[“John”]); // Manager |
KEY是否存在 | names = {“Tim”:”Clerk”, “John”:”Manager”, “Mary”: “Boss”}; print(“John” in names); // true |
更新值 | names = {“Tim”:”Clerk”, “John”:”Manager”, “Mary”: “Boss”}; names[“Tim”] = “Cooker”; print(names[‘Tim’]); // Cooker |
刪除值 | names = {“Tim”:”Clerk”, “John”:”Manager”, “Mary”: “Boss”}; del names[“Tim”]; print(names[‘Tim’]); # KeyError: ‘Tim’ |
清除所有值 | names = {“Tim”:“Clerk”, “John”:“Manager”, “Mary”: “Boss”}; names = {} // clear print(names); // {} |
拿Keys List | names = {“Tim”:”Clerk”, “John”:”Manager”, “Mary”: “Boss”}; print(names.keys()); # dict_keys([‘Tim’, ‘John’, ‘Mary’]) |
拿Values List | names = {“Tim”:“Clerk”, “John”:“Manager”, “Mary”: “Boss”}; print(names.values()); # dict_values([‘Clerk’, ‘Manager’, ‘Boss’]) |
foreach迴圈 | names = {“Tim”:“Clerk”, “John”:“Manager”, “Mary”: “Boss”}; for key in names.keys(): print(names[key] + ” ” + key); // Tim Clerk // John Manager // Mary Boss |
相關頁面
Python List – 學會List的9種基本應用方法 – 初始化, 加入值, 插入值, 追加值, 更新值, 刪除值, 清除所有值, 切片,排序, for迴圈
Python Set – 學會Set的6種基本應用方法 – 初始化, 加入值, 加入多個值, 刪除值, 清除所有值, for迴圈
Python Tuple – 學會Tuple的3種基本應用方法 – 初始化,切片, for迴圈
參考資料: https://docs.python.org/3/tutorial/datastructures.html#dictionaries