您好,登錄后才能下訂單哦!
本篇內容主要講解“Python list列表刪除元素的方法有哪些”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Python list列表刪除元素的方法有哪些”吧!
del 是 Python 中的關鍵字,專門用來執行刪除操作,它不僅可以刪除整個列表,還可以刪除列表中的某些元素。我們已經在《Python列表》中講解了如何刪除整個列表,所以本節只講解如何刪除列表元素。
del 可以刪除列表中的單個元素,格式為:
del listname[index]
其中,listname 表示列表名稱,index 表示元素的索引值。
del 也可以刪除中間一段連續的元素,格式為:
del listname[start : end]
其中,start 表示起始索引,end 表示結束索引。del 會刪除從索引 start 到 end 之間的元素,不包括 end 位置的元素。
【示例】使用 del 刪除單個列表元素:
lang = ["Python", "C++", "Java", "PHP", "Ruby", "MATLAB"] #使用正數索引 del lang[2] print(lang) #使用負數索引 del lang[-2] print(lang)
運行結果:
['Python', 'C++', 'PHP', 'Ruby', 'MATLAB']
['Python', 'C++', 'PHP', 'MATLAB']
【示例】使用 del 刪除一段連續的元素:
lang = ["Python", "C++", "Java", "PHP", "Ruby", "MATLAB"] del lang[1: 4] print(lang) lang.extend(["SQL", "C#", "Go"]) del lang[-5: -2] print(lang)
運行結果:
['Python', 'Ruby', 'MATLAB']
['Python', 'C#', 'Go']
Python pop() 方法用來刪除列表中指定索引處的元素,具體格式如下:
listname.pop(index)
其中,listname 表示列表名稱,index 表示索引值。如果不寫 index 參數,默認會刪除列表中的最后一個元素,類似于數據結構中的“出棧”操作。
pop() 用法舉例:
nums = [40, 36, 89, 2, 36, 100, 7] nums.pop(3) print(nums) nums.pop() print(nums)
運行結果:
[40, 36, 89, 36, 100, 7]
[40, 36, 89, 36, 100]
大部分編程語言都會提供和 pop() 相對應的方法,就是 push(),該方法用來將元素添加到列表的尾部,類似于數據結構中的“入棧”操作。但是 Python 是個例外,Python 并沒有提供 push() 方法,因為完全可以使用 append() 來代替 push() 的功能。
除了 del 關鍵字,Python 還提供了 remove() 方法,該方法會根據元素本身的值來進行刪除操作。
需要注意的是,remove() 方法只會刪除第一個和指定值相同的元素,而且必須保證該元素是存在的,否則會引發 ValueError 錯誤。
remove() 方法使用示例:
nums = [40, 36, 89, 2, 36, 100, 7] #第一次刪除36 nums.remove(36) print(nums) #第二次刪除36 nums.remove(36) print(nums) #刪除78 nums.remove(78) print(nums)
運行結果:
[40, 89, 2, 36, 100, 7]
[40, 89, 2, 100, 7]
Traceback (most recent call last):
File "C:\Users\mozhiyan\Desktop\demo.py", line 9, in <module>
nums.remove(78)
ValueError: list.remove(x): x not in list
最后一次刪除,因為 78 不存在導致報錯,所以我們在使用 remove() 刪除元素時最好提前判斷一下。
Python clear() 用來刪除列表的所有元素,也即清空列表,請看下面的代碼:
url = list("//www.5655pk.com/python/") url.clear() print(url)
運行結果:
[]
到此,相信大家對“Python list列表刪除元素的方法有哪些”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。