【Python】Python - 更新Tuple。Python Update Tuples.

 【Python】Python - 更新Tuple。Python Update Tuples.


Tuples宣告後是無法修改的; 這表示一旦tuple已經建立後,就無法再修改,新增,或移除items。

但仍然有一些解決方法:


改變Tuple的值

一旦tuple被建立,你就無法改變它的值。Tuples是無法改變的,英文稱為unchangeable, or immutable

但有其他做法,如轉換為list後,對list修改完畢後再轉回tuple。

範例

以下範例將tuple轉換為list:

x = ("apple""banana""cherry")
y = list(x)
y[1] = "kiwi"
x = tuple(y)

print(x)
上面輸出: ("apple", "kiwi", "cherry")

增加Items

一旦tuple被建立,則無法再增加items。

範例

無法再增加items到tuple中:

thistuple = ("apple""banana""cherry")
thistuple.append("orange"# This will raise an error
print(thistuple)
上面將輸出下面的錯誤訊息:
Traceback (most recent call last):
File "./testTuple.py", line 2, in <module>
AttributeError: 'tuple' object has no attribute 'append'

但如果有新增items的需求,如同上面的做法,可以先轉換為list,新增items在list中,再轉換回Tuple:

範例

轉換tuple為list,並增加一個item "orange",再轉回tuple:

thistuple = ("apple""banana""cherry")
y = list(thistuple)
y.append("orange")
thistuple = tuple(y)
上面輸出: ('apple', 'banana', 'cherry', 'orange')

移除Items

Note: 在tuple中你無法移除items。

Tuple是無法修改的,無法刪除items ,但你可以如上面做些加工達到相同效果:

範例

轉換tuple為list,移除 "apple"後再轉換回tuple格式,等同在記憶體中重新宣告並重新建立一個tuple:

thistuple = ("apple""banana""cherry")
y = list(thistuple)
y.remove("apple")
thistuple = tuple(y)
上面輸出: ('banana', 'cherry')

或將整個tuple從記憶體中刪除:

範例

del keyword可以刪除整個tuple:

thistuple = ("apple""banana""cherry")
del thistuple
print(thistuple) #this will raise an error because the tuple no longer exists
上面輸出錯誤訊息如下:
Traceback (most recent call last):
  File "test_tuple_del.py", line 3, in <module>
    print(thistuple) #this will raise an error because the tuple no longer exists
NameError: name 'thistuple' is not defined

留言

這個網誌中的熱門文章

【多益】現點現做的英文怎麼說呢?

《Microsoft Word 應用》:圖片被文字蓋住解決方法,不可設定為固定行高

如何在Ubuntu系統上安裝Notepad ++ (Install Notepad++ On Ubuntu 16.04 / 17.10 / 18.04 / 20.04)