什麼是 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 串列與字典在實務中的應用

  1. 網路爬蟲: 使用串列儲存爬取到的網頁連結,使用字典儲存網頁內容的結構化資料,例如標題、作者、發布日期等。例如,爬取 PTT 論壇的文章資訊,可以使用字典儲存每篇文章的標題、作者、推文數等資訊,然後將這些字典儲存在一個串列中。

  2. 資料分析: 使用串列儲存資料集的列,使用字典儲存資料集的行。Pandas 庫中的 DataFrame 物件就是基於串列和字典實現的。例如,分析某公司過去 5 年的銷售數據,可以使用串列儲存每年的銷售額,使用字典儲存不同產品的銷售額。

  3. 遊戲開發: 使用串列儲存遊戲中的角色、物品等,使用字典儲存角色的屬性、物品的資訊等。例如,開發一款 RPG 遊戲,可以使用字典儲存每個角色的血量、攻擊力、防禦力等屬性,然後將這些字典儲存在一個串列中。

  4. 機器學習: 使用串列儲存訓練資料和測試資料,使用字典儲存模型的參數。例如,訓練一個圖像分類模型,可以使用串列儲存圖像的像素值,使用字典儲存模型的權重和偏差。

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 串列與字典的考題?

  • 關鍵字: 注意題目中是否出現 "串列"、"列表"、"字典"、"鍵值對" 等關鍵字。
  • 資料結構: 觀察題目中給定的資料結構是否使用 [] (串列) 或 {} (字典) 表示。
  • 操作: 注意題目中是否需要進行資料的儲存、查找、新增、刪除、修改等操作。 如果需要按順序存取資料,則很可能需要使用串列。 如果需要快速查找資料,則很可能需要使用字典。

Python 串列與字典 在 iPAS 考試中的重點

根據歷年統計,Python 串列與字典 相關題目 平均佔 AI 技術類考題 8%, 屬於高頻考範圍。

常見出題方向:Python 語法閱讀與理解(45%)、程式邏輯判斷(35%)、程式片段解析與輸出預測(20%)。

相關術語

資料來源

← 回到 Python 串列與字典 快查頁

延伸學習

想看 Python 串列與字典 的完整影片教學?前往 美第奇 AI 學院

測驗你對 Python 串列與字典 的理解

透過模擬考系統檢驗學習成果

開始測驗