如何更新 Python 列表元素的值?


在 Python 中,列表是內建資料結構之一,用於儲存資料集合。列表是可變的,這意味著在建立列表後可以修改其元素。我們有一些列表方法,如 append、insert、extend、remove 和 clear,這些方法用於透過向列表物件新增、更新或刪除元素來更改列表內容。在本文中,我們將討論如何更新列表中現有的元素。

使用索引位置更新列表元素

列表是基於索引的順序資料結構,因此我們可以透過其索引位置(稱為索引值)訪問列表元素。Python 列表的索引值以兩種方式表示:正索引和負索引。

正索引從 0 到 n-1 開始,而負索引值從 -1 到 -n 開始(即,從結束元素到開始元素)。

示例

我們必須將第 3 個元素的值從 89 更改為 21。為此,我們使用方括號和元素的索引值(即 2,因為我們使用了正索引)從列表中訪問第 3 個元素。

list_A = [100, 'aa', 89, 'foo']
print('Original list: ', list_A)

# Update value of 3rd element in list
list_A[2] = 21
print("Updated list: ",list_A)

輸出

Original list:  [100, 'aa', 89, 'foo']
Updated list:  [100, 'aa', 21, 'foo']

示例

讓我們以上面相同的示例為例,並使用負索引更新第二個元素“aa”。

list_A = [100, 'aa', 89, 'foo']
print('Original list: ', list_A)
# Update value of 3rd element in list
list_A[-3] = 2022
print("Updated list: ",list_A)

輸出

Original list:  [100, 'aa', 89, 'foo']
Updated list:  [100, 2022, 89, 'foo']

使用負索引值將列表的第二個元素從“aa”更新為 2022(字串型別到整數型別)。

按元素更新元素

在前面的示例中,我們透過使用元素的索引位置更新了列表元素的值。如果我們不知道元素的位置怎麼辦?然後我們可以嘗試如下操作。

示例

在下面的示例中,我們嘗試將列表元素“aa”更新為 200。在這種情況下,如果元素“aa”存在於多個位置,則 200 將更新多次。

list_A = [100, 'aa', 89, 'foo']
print('Original list: ', list_A)

for idx, item in enumerate(list_A):
   if 'aa' == item:
       list_A[idx] = 200
print("Updated list: ",list_A)

輸出

Original list:  [100, 'aa', 89, 'foo']
Updated list:  [100, 200, 89, 'foo']

一次更新多個元素值

讓我們舉一個例子,一次更新多個元素。在這裡,我們可以使用索引範圍(即,開始:結束索引位置)從列表中選擇多個專案。

示例

在這裡,我們嘗試使用列表 lindex 範圍將值“aa”、89、“foo”更新為“A”、”B“、”C“。

list_A = [100, 'aa', 89, 'foo']
print('Original list: ', list_A)

list_A[1:4] = 'A', 'B', 'C'
print("Updated list: ",list_A)

輸出

Original list:  [100, 'aa', 89, 'foo']
Updated list:  [100, 'A', 'B', 'C'

更新於: 2023-08-24

769 次瀏覽

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告