Python程式:向元組新增元素


在Python中,元組是不可變的,這意味著一旦建立,它們的元素就不能修改。但是,有時您可能需要向元組新增元素。

在本文中,我們將討論如何在Python中向元組新增元素。我們將介紹向元組新增元素的語法,並提供操作示例。

Python元組與Python列表非常相似,您可以對列表執行的所有各種操作都可以對元組執行。唯一的區別是元組在建立後不能修改,即它們的不可變性,而列表本質上是可變的。我們可以使用圓括號定義Python中的元組,括號內包含我們希望儲存的資料。

var = (1, ‘a’, 3.7)

但是,正如我們剛才看到的,元組是不可變的。那麼,我們如何向其中追加或新增元素呢?我們知道新增某些東西通常意味著更改專案,但是元組在建立後不能修改,因此我們無法向同一個元組新增元素。

如果我們嘗試使用append方法向元組中新增元素,或者嘗試更改其中的現有值,我們將得到一個TypeError,指出“元組不支援專案賦值”。

我們唯一的選擇是建立一個全新的元組,其中包含我們希望它具有的資料。這樣,我們可以在實現向其中新增元素的目標的同時,保持不變性。

我們可以透過多種方法插入/向元組中新增元素。

  • 使用+運算子進行連線

  • 使用型別轉換

  • 使用*運算子

使用+運算子

如您所知,Python是一種使用者友好的語言,許多方法使使用者能夠輕鬆地互動並解決複雜的問題,而無需理解其背後的演算法或理論。

使用+運算子向元組新增元素也是如此。每當我們在元組之間使用+運算子時,它都會建立一個新的元組,其中包含兩個元組的值。即使我們在相同變數之間使用+運算子,這也適用。

步驟1 - 建立一個包含一些值的元組

步驟2 – 使用+運算子向其中新增更多值/元素

需要注意的是,運算子兩側的物件型別必須相同,這意味著如果我們希望新增元素,則另一個物件必須是元組。否則,我們將收到錯誤。

示例

在下面的示例中,我們在同一個變數上使用“+”運算子:

A = (1, 2, 3)
print("The elements of tuple before adding are :", A)
A += (4,)
print("Tuple after addition of new elements", A)

輸出

Tuple before addition of new elements(1, 2 , 3)
Tuple after addition of new elements(1, 2, 3, 4)

示例

在下面的示例中,我們在不同的變數上使用“+”運算子。

A = (1, 2, 3)
B = (4,)
print("The elements of tuple before adding are :", A)
A += B
print("Tuple after addition of new elements", A)

輸出

Tuple before addition of new elements(1, 2 , 3)
Tuple after addition of new elements(1, 2, 3, 4)

使用型別轉換為列表

在這種方法中,我們將研究使用型別轉換向元組中新增元素。我們知道,我們可以使用list方法將元組轉換為列表,然後可以使用列表的append方法新增任意數量的專案,當我們完成新增元素後,我們再使用型別轉換將列表轉換為元組。

這是一種間接新增元素的方法,但它可以節省我們檢查+運算子之間型別不匹配的工作。

示例

A = (1, 2, 3)
print("Tuple before addition of new elements", A)
A = list(A)
A.append(4)
A.append(5)
A.append(6)
A = tuple(A)
print("Tuple after addition of new elements", A)

輸出

Tuple before addition of new elements(1, 2 , 3)
Tuple after addition of new elements(1, 2, 3, 4, 5, 6)

使用“ * ”運算子

這是一種高階方法,因為它基於解包元組的元素並將它們用於在新建立的元組中插入元素。*運算子用於元素的乘法或重複,但根據其位置,它的行為可能不同。每當我們在元組前面使用*運算子時,它都會解包元組的所有元素。

演算法

  • 步驟1 - 建立一個元組

  • 步驟2 - 建立一個同名的新元組,並將其賦值為添加了我們希望新增的元素的元組物件

示例

A = (1, 2, 3)
print("Tuple before addition of new elements", A)
A = (*A, 4, 5, 6)
print("Tuple after addition of new elements", A)

輸出

Tuple before addition of new elements(1, 2, 3)
Tuple after addition of new elements(1, 2, 3, 4, 5, 6)

結論

在本文中,我們看到了向元組新增元素的三種不同方法。我們學習了簡單易用的Pythonic方法。我們看到了如何使用型別轉換和list方法,然後使用append新增元素。最後,我們深入研究瞭解包及其用於新增元素的高階概念。

更新於:2023年2月17日

2K+ 次瀏覽

啟動您的職業生涯

完成課程獲得認證

開始學習
廣告