元素刪除

Python SELF TW
等級 7 , 課堂 5
開放

5.1 方法 remove()pop()

在Python中可以通過多種方式刪除列表中的元素,這使得該程式語言在管理資料集合時特別靈活。

方法 remove()

方法 remove() 刪除列表中的第一個指定元素。如果找不到該元素,Python會給出ValueError錯誤。

範例:


my_list = ['apple', 'banana', 'cherry']
my_list.remove('banana')
print(my_list)  # 顯示 ['apple', 'cherry']

如果列表中有多個相同元素,則只會刪除第一個:


my_list = ['apple', 'banana', 'cherry', 'apple', 'banana', 'cherry']
my_list.remove('banana')
print(my_list)  # 顯示 ['apple', 'cherry', 'apple', 'banana', 'cherry']

如果找不到該元素,將會引發 ValueError


my_list = ['apple', 'cherry']
my_list.remove('banana')  # ValueError: list.remove(x): x not in list

方法 pop()

方法 pop() 根據指定的索引刪除並返回該元素。


my_list = [1, 2, 3, 4, 5]
popped_element = my_list.pop(2)
print(popped_element)  # 顯示 3 
print(my_list)  # 顯示 [1, 2, 4, 5] 

如果沒有指定索引,則 pop() 刪除並返回列表中的最後一個元素。


my_list = [1, 2, 3, 4, 5]
popped_element = my_list.pop()
print(popped_element)  # 顯示 5 
print(my_list)  # 顯示 [1, 2, 3, 4] 

方法 append()pop() 讓列表成為簡單的堆疊。

5.2 運算子 del

運算子 del 在Python中是一個強而有力的工具,特別是在想要一次刪除一個或多個元素甚至整個列表時。它不僅能夠刪除元素,還能釋放記憶體,這在處理大量資料時很有用。

刪除單個元素

使用 運算子 del 可以簡單地根據索引刪除列表中的元素。這可以透過在 del 關鍵字後指定索引或索引範圍來實現:


numbers = [10, 20, 30, 40, 50]
del numbers[2]  # 刪除元素 30
print(numbers)  # 顯示 [10, 20, 40, 50]

刪除列表切片

運算子 del 也可以用來刪除列表的切片,這樣可以一次性移除多個元素:


numbers = [10, 20, 30, 40, 50]
del numbers[1:3]  # 刪除索引1和2的元素
print(numbers)  # 顯示 [10, 40, 50]

刪除整個列表

如果需要完全刪除列表,del 也能做到:


numbers = [10, 20, 30, 40, 50]
del numbers

在執行這個命令後,變數numbers將不再可用,因為 del 完全刪除了該物件。

對記憶體的影響

使用 del 來管理列表在記憶體管理至關重要的應用程式中尤其重要。透過 del 刪除元素或列表時,會釋放記憶體,這可以提高效能並防止在大型或長時間運行的Python應用程式中發生記憶體洩漏。

5.3 方法 clear()

方法 clear() 在Python中可用於刪除列表中的所有元素,使其為空。這是一個簡單而有效的方式來清空列表,特別是在需要重複使用已存在的列表以配合新資料時,避免創建新的物件。


my_list = [1, 2, 3, 4, 5]
my_list.clear()
print(my_list)  # 顯示 []

與使用 del 刪除列表自身(即刪除變數)相比,clear() 只是清空了列表,保留變數以便進一步使用新內容。

留言
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION