【Python 筆記】探索字典(Dictionary):靈活的鍵值對與應用案例分析

更新於 2024/12/11閱讀時間約 6 分鐘

嗨,大家好!我是 Rex,今天繼續跟大家分享我的 Python 筆記。

Introduction

這次的主題是另一個非常常見的資料結構 - 字典(Dictionary)。字典在大部分資料分析專案中都能見到哦。字典也被稱為散列映射(Hash Map)或聯合數組(Associative Array),是一種非常靈活的數據結構。它儲存了一組由鍵值對(key-value pairs)組成的集合。鍵必須是不可變(immutable)的物件,比如字符串、數字或者元組。值則可以是任何 Python 的物件。字典使用大括號 {} 包裹住數據,當你在 Python 中看到長這樣的程式碼時,它就是字典啦!

優點

  • 快速查找:字典提供快速的查找功能,適合用於基於 Unique Identifier 進行數據搜尋和操作。
  • 靈活的鍵值存儲:它能夠輕鬆地存儲和管理不同類型的數據對應關係。

Coding Example

字典在生活中的應用非常廣泛。例如,在大多數軟體公司中,字典可以用來儲存使用者的資料(如名稱、年齡、電子郵件等)。對於語言學習軟體而言,字典則可以儲存句子的翻譯對照(例如,"我是 Rex" 對應到 "I am Rex")。上一篇我以旅遊清單為例子解釋列表(List),今天就來做延伸,用字典來儲存旅遊地點的中文和英文名稱。

首先,我們的資料長這樣

travel_destinations = { 
"Paris": "巴黎",
"Tokyo": "東京",
"New York": "紐約",
"Sydney": "雪梨",
"Rome": "羅馬" }
  1. 讀取數值 - 想知道 Paris 的中文名稱
travel_destinations["Paris"]  # Output "巴黎"
  1. 新增一個新的旅遊城市 - “Barcelona” 的英文名和中文名
travel_desitination["Barcelona"] = "巴塞隆納"
  1. 修改一個城市的中文命名 - "New York" 改成 "大蘋果" [備註: 延伸資料在這!]
travel_desitination["New York"] = "大蘋果"
  1. 刪除某個城市 - 假如你不想去 Syndney 了
del travle_destination["Syndney"]
  1. 取得所有旅遊地的英文名稱 (Key 鍵) - 使用 dict.keys()
keys = travle_destination.keys()
print(values)
# Output: dict_keys(['Paris', 'Tokyo', 'New York', 'Rome', 'Barcelona'])
  1. 取得所有旅遊地的中文名稱 (Value 值) - 使用 dict.values()
values = travle_destination.values()
print(keys)
# Output: dict_values(['巴黎', '東京', '大蘋果', '羅馬', '巴塞隆納'])
  1. 同時取得旅遊地的中文以及英文名稱 (Key-Value 鍵值) - 使用 dict.items()
items = travel_destinations.items()
print(items)
# Output: dict_items([('Paris', '巴黎'), ('Tokyo', '東京'), ('New York', '大蘋果'), ('Rome', '羅馬'), ('Barcelona', '巴塞隆納')])


這些提到的方法都是我在做資料分析時經常使用的功能。字典是一個非常重要的資料結構,不論是用來儲存資料,還是通過 API 向第三方取資料(通常以 JSON 格式),這些基本操作在工作中都不可或缺。當然,這篇教學不會涵蓋所有字典的方法,如果有興趣的話,歡迎大家點擊我下方提供的延伸連結進一步研究。

最後,在這個教學的結束,我也給大家一個觀念題和兩個 Coding 題目,邀請各位讀者一起練習!希望大家能夠透過這些練習,進一步加深對字典的理解和應用。

Coding Exercise

  • 建立一個名為 student 的字典,存儲學生的名字、年齡和成績。從字典中打印出學生的年齡。
  • (進階題,除了 forloop,其他概念在這堂課都有提到!) 寫一個函數,該函數接收一個字典作為輸入,並返回一個新的字典,其中的鍵和值交換。


Concept Question

  • 字典中的允許哪些數據類型? (List? Int? Dict? Float? String? ...)


歡迎各位在留言區分享你們的想法,有問題的話也歡迎提問!

下一篇我會提到其他資料結構,沒意外的話會是集合 (Set),我們下次見!


Reference

avatar-img
1會員
7內容數
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
CodingWRex的沙龍 的其他內容
在這篇文章中,Rex 分享了 Python 中的資料結構 - 列表。列表是一種可變且長度可變的序列,可以包含多種數據類型。文章介紹了列表的優點及其基本操作,包括新增、插入和刪除項目,並透過實際的旅遊清單範例來說明。適合對 Python 感興趣的初學者,瞭解列表的基本用法及其特性。
在這篇文章中,Rex 分享了 Python 中的資料結構 - 列表。列表是一種可變且長度可變的序列,可以包含多種數據類型。文章介紹了列表的優點及其基本操作,包括新增、插入和刪除項目,並透過實際的旅遊清單範例來說明。適合對 Python 感興趣的初學者,瞭解列表的基本用法及其特性。
你可能也想看
Google News 追蹤
Thumbnail
本文探討了複利效應的重要性,並藉由巴菲特的投資理念,說明如何選擇穩定產生正報酬的資產及長期持有的核心理念。透過定期定額的投資方式,不僅能減少情緒影響,還能持續參與全球股市的發展。此外,文中介紹了使用國泰 Cube App 的便利性及低手續費,幫助投資者簡化投資流程,達成長期穩定增長的財務目標。
re 模組基本介紹 re 模組是 Python 用來處理正則表達式的標準模組。 正則表達式是一種用於描述字串模式的語法,可以用來匹配、搜尋、分割和替換字串中的特定模式。
Thumbnail
在資料分析過程中,透過衡量變數之間的線性或非線性關係,能有效探索數據集,篩選出重要特徵,並進行預測建模。本文介紹瞭如何理解數據、使用相關矩陣找出變數關聯性,以及利用互資訊評估變數之間的依賴程度,幫助資料科學家在建模過程中選擇適當的變數,提升模型效果。
Thumbnail
Python資料視覺化在數據分析中扮演關鍵角色,透過視覺化捕捉數據模式、趨勢和異常,透過Matplotlib等工具創建專業圖表變相對簡單和高效。
Thumbnail
本文介紹了在進行資料分析時,將類別欄位轉換為數值欄位的方法,包括Label Encoding、One-Hot Encoding、Binary Encoding、Target Encoding和Frequency Encoding。每種方法的應用範例、優缺點和適用場景都有詳細說明。
ITS python認證內容含蓋六大主題
Thumbnail
這邊統整了所有過去發表過關於 QUERY 函式的教學分享,希望可以方便你按照順序閱讀和練習。 QUERY 可以用來查詢、篩選、聚集、排序資料,還可以做張簡易的資料透視表,是我在 Google 試算表上做數據分析、製作報告、製作儀表板時最常用的函式之一,既方便又好用,誠心推薦!
Thumbnail
宣告變數 變數是程式中用來儲存和表示數據的標識符號​,並將變數存放在某個記憶體位子 可以用ID的方法查找變數存在哪個記憶體,此方法有利於以後查找問題用。 在大多數程式語言中,變數需要事先聲明(宣告)並賦值。 而Python是一種動態類型語言,不需要顯式宣告變數類型,而是在賦值時自動進行推斷。
Thumbnail
本文探討了複利效應的重要性,並藉由巴菲特的投資理念,說明如何選擇穩定產生正報酬的資產及長期持有的核心理念。透過定期定額的投資方式,不僅能減少情緒影響,還能持續參與全球股市的發展。此外,文中介紹了使用國泰 Cube App 的便利性及低手續費,幫助投資者簡化投資流程,達成長期穩定增長的財務目標。
re 模組基本介紹 re 模組是 Python 用來處理正則表達式的標準模組。 正則表達式是一種用於描述字串模式的語法,可以用來匹配、搜尋、分割和替換字串中的特定模式。
Thumbnail
在資料分析過程中,透過衡量變數之間的線性或非線性關係,能有效探索數據集,篩選出重要特徵,並進行預測建模。本文介紹瞭如何理解數據、使用相關矩陣找出變數關聯性,以及利用互資訊評估變數之間的依賴程度,幫助資料科學家在建模過程中選擇適當的變數,提升模型效果。
Thumbnail
Python資料視覺化在數據分析中扮演關鍵角色,透過視覺化捕捉數據模式、趨勢和異常,透過Matplotlib等工具創建專業圖表變相對簡單和高效。
Thumbnail
本文介紹了在進行資料分析時,將類別欄位轉換為數值欄位的方法,包括Label Encoding、One-Hot Encoding、Binary Encoding、Target Encoding和Frequency Encoding。每種方法的應用範例、優缺點和適用場景都有詳細說明。
ITS python認證內容含蓋六大主題
Thumbnail
這邊統整了所有過去發表過關於 QUERY 函式的教學分享,希望可以方便你按照順序閱讀和練習。 QUERY 可以用來查詢、篩選、聚集、排序資料,還可以做張簡易的資料透視表,是我在 Google 試算表上做數據分析、製作報告、製作儀表板時最常用的函式之一,既方便又好用,誠心推薦!
Thumbnail
宣告變數 變數是程式中用來儲存和表示數據的標識符號​,並將變數存放在某個記憶體位子 可以用ID的方法查找變數存在哪個記憶體,此方法有利於以後查找問題用。 在大多數程式語言中,變數需要事先聲明(宣告)並賦值。 而Python是一種動態類型語言,不需要顯式宣告變數類型,而是在賦值時自動進行推斷。