Python 串列與字典(Python List & Dictionary)
Python 串列(List)是一種有序、可變的資料結構,用於儲存一系列元素;字典(Dictionary)則是一種鍵值對(Key-Value)的資料結構,用於快速查找和存取資料。
完整說明
Python 串列與字典是什麼?
Python 串列(List)和字典(Dictionary)是兩種核心的資料結構,用於組織和儲存資料。串列是有序的可變序列,可以包含不同類型的元素,例如數字、字串,甚至是其他的串列或字典。字典則是一種無序的鍵值對集合,通過鍵來存取對應的值,提供快速的查找功能。它們在程式設計中扮演著重要的角色,可以靈活地處理各種資料。
Python 串列與字典的核心原理
串列 (List)
串列使用索引(Index)來存取元素,索引從 0 開始。可以使用 append() 方法新增元素,insert() 方法在指定位置插入元素,remove() 方法刪除指定值的元素,pop() 方法刪除指定索引的元素。
# 建立串列
my_list = [1, "hello", 3.14]
# 存取元素
print(my_list[0]) # 輸出: 1
# 新增元素
my_list.append("world")
print(my_list) # 輸出: [1, "hello", 3.14, "world"]
# 刪除元素
my_list.remove("hello")
print(my_list) # 輸出: [1, 3.14, "world"]
字典 (Dictionary)
字典使用鍵(Key)來存取值(Value)。鍵必須是不可變的資料類型,例如字串或數字。可以使用 [] 或 get() 方法存取值,del 關鍵字刪除鍵值對。
# 建立字典
my_dict = {"name": "Alice", "age": 30}
# 存取值
print(my_dict["name"]) # 輸出: Alice
print(my_dict.get("age")) # 輸出: 30
# 新增鍵值對
my_dict["city"] = "Taipei"
print(my_dict) # 輸出: {'name': 'Alice', 'age': 30, 'city': 'Taipei'}
# 刪除鍵值對
del my_dict["age"]
print(my_dict) # 輸出: {'name': 'Alice', 'city': 'Taipei'}
Python 串列與字典在實務中的應用
網路爬蟲: 使用串列儲存爬取到的網頁連結,使用字典儲存網頁內容的結構化資料,例如標題、作者、發布日期等。例如,爬取 PTT 論壇的文章資訊,可以使用字典儲存每篇文章的標題、作者、推文數等資訊,然後將這些字典儲存在一個串列中。
資料分析: 使用串列儲存資料集的列,使用字典儲存資料集的行。Pandas 庫中的 DataFrame 物件就是基於串列和字典實現的。例如,分析某公司過去 5 年的銷售數據,可以使用串列儲存每年的銷售額,使用字典儲存不同產品的銷售額。
遊戲開發: 使用串列儲存遊戲中的角色、物品等,使用字典儲存角色的屬性、物品的資訊等。例如,開發一款 RPG 遊戲,可以使用字典儲存每個角色的血量、攻擊力、防禦力等屬性,然後將這些字典儲存在一個串列中。
機器學習: 使用串列儲存訓練資料和測試資料,使用字典儲存模型的參數。例如,訓練一個圖像分類模型,可以使用串列儲存圖像的像素值,使用字典儲存模型的權重和偏差。
Python 串列與字典在 iPAS 考試中的重點
此術語對應的 iPAS 評鑑代號為 L22/L23-prog。
- 串列 (List): 串列的建立、存取、切片、新增、刪除、排序、以及常見的串列方法(如
append(),insert(),remove(),pop(),sort(),reverse()等)是考試重點。 - 字典 (Dictionary): 字典的建立、存取、新增、刪除、修改、以及常見的字典方法(如
get(),keys(),values(),items(),update()等)是考試重點。 - 綜合應用: 能夠靈活運用串列和字典解決實際問題,例如資料的儲存、查找、統計等。常考題型包括:給定一個資料集,使用串列和字典進行資料清洗、轉換、分析等。
常見問題
Python 串列與字典和相近概念有何差異?
| 特性 | 串列 (List) | 字典 (Dictionary) |
|---|---|---|
| 資料結構 | 有序序列 | 鍵值對集合 (無序) |
| 存取方式 | 使用索引 (Index) | 使用鍵 (Key) |
| 鍵/值類型 | 元素可以是任何資料類型 | 鍵必須是不可變類型 (例如字串、數字、元組) |
| 應用場景 | 儲存有序的資料集合,需要按順序存取資料時 | 儲存鍵值對應關係,需要快速查找資料時 |
學習Python 串列與字典最容易踩的坑是什麼?
- 串列 (List): 索引越界錯誤(IndexError),例如存取超出串列長度的索引。
- 字典 (Dictionary): 鍵不存在錯誤(KeyError),例如存取字典中不存在的鍵。另外,字典的鍵必須是不可變的,如果使用可變的資料類型(例如串列)作為鍵,會導致錯誤。
考試中如何快速辨認Python 串列與字典的考題?
- 關鍵字: 注意題目中是否出現 "串列"、"列表"、"字典"、"鍵值對" 等關鍵字。
- 資料結構: 觀察題目中給定的資料結構是否使用
[](串列) 或{}(字典) 表示。 - 操作: 注意題目中是否需要進行資料的儲存、查找、新增、刪除、修改等操作。 如果需要按順序存取資料,則很可能需要使用串列。 如果需要快速查找資料,則很可能需要使用字典。
iPAS 考試出題分析
根據歷年 iPAS AI 應用規劃師考古題統計,Python 串列與字典 相關題目 平均佔 AI 技術類考題 8%, 屬於高頻考範圍。
常見出題方向包含:Python 語法閱讀與理解(佔 45%)、程式邏輯判斷(佔 35%)、程式片段解析與輸出預測(佔 20%)。
相關術語
延伸學習
延伸學習
想看 Python 串列與字典 的完整影片教學?前往 美第奇 AI 學院
立即測驗
想測試你對 Python 串列與字典 的掌握程度? 開始模擬考
資料來源與參考依據
- iPAS AI 應用規劃師評鑑內容範圍參考(115.02 更新) — 經濟部產業人才能力鑑定
- AI 應用規劃師中級程式題型比重說明(114 年第二梯次起) — iPAS 官方公告
本頁考試相關資訊依官方文件整理,實際考試內容以官方公告為準。