Python - 元組:初學者指南

你好啊,未來的Python愛好者!今天,我們將踏上一段令人興奮的旅程,進入Python元組的世界。如果你從未編程過,也別擔心——我會在這裡陪伴著你,一步步解釋一切。所以,來一杯咖啡(或者茶,如果你喜歡的话),我們一起深入探討吧!

Python - Tuples

什麼是元組?

在我們開始之前,先來了解什麼是元組。你可以將元組視為一個容器,可以容納多個項目,就像一盒各式各樣的巧克力一樣。不過有個轉折點?一旦你將巧克力(或數據)放入這個盒子,你就無法更改它們了!

以下是我們如何創建一個元組:

my_first_tuple = (1, 2, 3, 'hello', 'world')
print(my_first_tuple)

當你運行這段代碼時,你會看到:

(1, 2, 3, 'hello', 'world')

看起來很簡單吧?我們剛剛創建了我們的第一個元組!

存取元組中的值

現在我們有了元組,來學習如何存取元組內的項目。我們使用一個叫做“索引”的東西來做到這一點。將索引視為元組中項目的位置號碼,從0開始。

my_tuple = ('apple', 'banana', 'cherry', 'date')
print(my_tuple[0])  # 這將會列印出 'apple'
print(my_tuple[2])  # 這將會列印出 'cherry'

輸出:

apple
cherry

記住,在Python(以及許多其他編程語言)中,我們從0開始計數,而不是1。這就像是一個奇怪的捉迷藏遊戲,"0"喊著"準備好了嗎,我在這裡!"

更新元組

記得我說過元組就像是你一旦包裝好就不能更改的巧克力盒嗎?我可不是在開玩笑!元組是不可變的,這意味著你在創建後不能更改其內容。

my_tuple = ('apple', 'banana', 'cherry')
my_tuple[0] = 'pear'  # 這將會引發一個錯誤!

如果你試圖運行這段代碼,Python會拋出一個錯誤,因為你試圖更改無法更改的內容。

但是等等!有一個解決方法。你可以將元組轉換為列表,進行更改,然後再將其轉換回元組:

my_tuple = ('apple', 'banana', 'cherry')
my_list = list(my_tuple)
my_list[0] = 'pear'
my_new_tuple = tuple(my_list)
print(my_new_tuple)

輸出:

('pear', 'banana', 'cherry')

這就像魔法一樣,不是嗎?我們實際上創建了一個帶有我們所需更改的新元組。

刪除元組元素

正像我們不能更新個別元素一樣,我們也不能從元組中刪除個別元素。但是,我們可以刪除整個元組:

my_tuple = ('apple', 'banana', 'cherry')
del my_tuple
print(my_tuple)  # 這將會引發一個錯誤,因為my_tuple已經不存在了

這就像把整盒巧克力都扔掉,而不是只挑出你不喜欢的那幾個!

Python元組操作

元組支持多種操作。讓我們來看看其中的一些:

連接

我們可以使用 '+' 運算符將兩個元組連接在一起:

tuple1 = (1, 2, 3)
tuple2 = ('a', 'b', 'c')
tuple3 = tuple1 + tuple2
print(tuple3)

輸出:

(1, 2, 3, 'a', 'b', 'c')

重複

我們可以使用 '*' 運算符重複元組:

my_tuple = ('Python',) * 3
print(my_tuple)

輸出:

('Python', 'Python', 'Python')

成員資格

我們可以使用 'in' 關鍵字檢查項目是否存在于元組中:

my_tuple = ('apple', 'banana', 'cherry')
print('banana' in my_tuple)
print('grape' in my_tuple)

輸出:

True
False

索引、切片和矩陣

元組支持索引和切片,就像列表一樣。讓我們看看一些例子:

my_tuple = ('p', 'y', 't', 'h', 'o', 'n')
print(my_tuple[1:4])  # 切片
print(my_tuple[::-1])  # 反轉元組

輸出:

('y', 't', 'h')
('n', 'o', 'h', 't', 'y', 'p')

無包圍定界符

這裡有一個有趣的事實:在Python中,你可以創建不需要括號的元組!這稱為“元組封包”:

my_tuple = 1, 2, 3, 'hello'
print(my_tuple)
print(type(my_tuple))

輸出:

(1, 2, 3, 'hello')
<class 'tuple'>

即使沒有括號,Python也會將其識別為元組!

內置函數與元組

Python提供了多個內置函數,可以與元組一起使用。讓我們看看其中的一些:

函數 描述 示例
len() 返回元組的長度 len((1, 2, 3)) 返回 3
max() 返回元組中最大的項目 max((1, 5, 3)) 返回 5
min() 返回元組中最小的項目 min((1, 5, 3)) 返回 1
sum() 返回元組中所有數字的和 sum((1, 2, 3)) 返回 6
sorted() 從元組返回一個新的已排序列表 sorted((3, 1, 2)) 返回 [1, 2, 3]

以下是一些使用這些函數的例子:

my_tuple = (3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5)
print("Length:", len(my_tuple))
print("Maximum:", max(my_tuple))
print("Minimum:", min(my_tuple))
print("Sum:", sum(my_tuple))
print("Sorted:", sorted(my_tuple))

輸出:

Length: 11
Maximum: 9
Minimum: 1
Sum: 44
Sorted: [1, 1, 2, 3, 3, 4, 5, 5, 5, 6, 9]

以上就是你的Python元組入門指南。記住,孰能生巧,所以不要害怕實驗這些概念。誰知道呢?你可能會在不知不覺中成為Python大師!開心編程!

Credits: Image by storyset