文章

第11天:元組(Tuple)

課程簡介

元組(Tuple)是 Python 中的一種有序且不可變(元素無法修改)的數據結構。與列表不同,元組一旦創建,裡面的元素就不能被改變,這使得它們適合存放那些不希望被修改的數據。今天我們將學習如何建立元組、操作元組,以及元組與列表的不同之處。


學習內容

1. 建立元組

元組是使用小括號 () 定義的,元素之間用逗號分隔。即使只有一個元素,也需要在元素後面加上逗號以表示這是一個元組。

範例:

1
2
3
4
5
6
7
# 建立一個包含多個元素的元組
fruits = ("apple", "banana", "cherry")
print(fruits)  # 輸出: ('apple', 'banana', 'cherry')

# 建立一個單元素的元組
single_element = ("apple",)
print(single_element)  # 輸出: ('apple',)

2. 訪問元組元素

元組是有序的數據結構,因此我們可以使用索引來訪問其中的元素,索引從 0 開始。

範例:

1
2
3
4
5
6
7
fruits = ("apple", "banana", "cherry")

# 訪問第一個元素
print(fruits[0])  # 輸出: apple

# 訪問最後一個元素
print(fruits[-1])  # 輸出: cherry

3. 元組是不可變的

元組的主要特點是不可變,這意味著一旦創建,元組中的元素就無法被修改、刪除或新增。

範例:

1
2
3
4
fruits = ("apple", "banana", "cherry")

# 這會引發錯誤,因為無法修改元組的元素
# fruits[0] = "orange"  # 錯誤: 'tuple' object does not support item assignment

4. 元組的常見操作

  • 聯集元組:可以使用 + 運算符來將兩個元組連接起來。
  • 重複元組:可以使用 * 運算符來重複元組中的元素。
  • 檢查元素:可以使用 in 關鍵字檢查某個元素是否存在於元組中。
  • 長度:使用 len() 方法來獲取元組的長度。

範例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
fruits = ("apple", "banana", "cherry")

# 將兩個元組聯結
new_fruits = fruits + ("orange", "grape")
print(new_fruits)  # 輸出: ('apple', 'banana', 'cherry', 'orange', 'grape')

# 重複元組
repeated_fruits = fruits * 2
print(repeated_fruits)  # 輸出: ('apple', 'banana', 'cherry', 'apple', 'banana', 'cherry')

# 檢查元素
print("apple" in fruits)  # 輸出: True

# 元組長度
print(len(fruits))  # 輸出: 3

5. 元組的解包(Unpacking)

元組允許我們將其元素賦值給多個變數,這稱為元組解包。解包的變數數量必須與元組中的元素數量匹配。

範例:

1
2
3
4
5
6
7
fruits = ("apple", "banana", "cherry")

# 元組解包
fruit1, fruit2, fruit3 = fruits
print(fruit1)  # 輸出: apple
print(fruit2)  # 輸出: banana
print(fruit3)  # 輸出: cherry

6. 元組與列表的轉換

元組和列表之間可以互相轉換。可以使用 list() 函數將元組轉換為列表,使用 tuple() 函數將列表轉換為元組。

範例:

1
2
3
4
5
6
7
8
9
fruits = ("apple", "banana", "cherry")

# 將元組轉換為列表
fruits_list = list(fruits)
print(fruits_list)  # 輸出: ['apple', 'banana', 'cherry']

# 將列表轉換為元組
fruits_tuple = tuple(fruits_list)
print(fruits_tuple)  # 輸出: ('apple', 'banana', 'cherry')

教學重點

  • 元組的定義:學會如何建立元組,並理解其不可變性。
  • 訪問元組元素:使用索引來訪問元組中的元素。
  • 元組的常見操作:如聯集、重複、檢查元素和獲取元組長度的操作方法。
  • 元組解包:掌握如何將元組中的元素分配給多個變數。
  • 元組與列表轉換:了解如何在元組和列表之間進行轉換。

任務

  1. 建立一個包含 5 個數字的元組,並使用索引訪問其中的第一個和最後一個元素。
  2. 將兩個元組聯集成一個新的元組,並重複其中的元素 3 次。
  3. 使用元組解包將一個三個元素的元組拆分為三個變數,並列印這三個變數的值。
  4. 將一個元組轉換為列表,對列表進行修改,然後再將列表轉換回元組。
本文章以 CC BY 4.0 授權