程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

Python中list的操作4-2

編輯:Python

2 刪除list中的元素

使用remove()、pop()或者clear()刪除list中的元素。

2.1 使用remove()方法刪除list中元素

2.1.1 remove()方法的語法

remove()方法的語法如下所示:

list.remove(value,/)

其中,value表示要刪除的值。

2.1.2 相關代碼

使用remove()方法刪除list中元素的代碼,如下所示:

>>> list1 = [1,2,3,4,5]
>>> list1.remove(2)
>>> print(list1)
[1, 3, 4, 5]

其中,使用remove()方法刪除list1中值為2的元素。

2.1.3 注意事項

(1)remove()刪除的是list中第一個出現的元素

remove()方法刪除的是列表中第一出現的元素,代碼如下所示:

>>> list1 = [1,2,3,4,5,2]
>>> list1.remove(2)
>>> print(list1)
[1, 3, 4, 5, 2]

其中,list1中包含兩個值為2的元素,使用remove()方法刪除值為2的元素時,索引為1的元素被刪除,而索引是5的元素2沒有被刪除。

(2)當列表中不包含要刪除的元素時,會顯示異常

代碼如下所示:

>>> list1
[1, 3, 4, 5, 2]
>>> list1.remove(6)
Traceback (most recent call last):
  File "<pyshell#7>", line 1, in <module>
    list1.remove(6)
ValueError: list.remove(x): x not in list

當要刪除list1中值為6的元素時,因為list1中不包含改元素,因此程序會顯示異常,該異常的信息是“值錯誤:list.remove(x):x沒有在列表中”。

2.2 使用pop()方法刪除list中元素

2.2.1 pop()方法的語法

pop()方法的語法如下所示:

list.pop(index=-1,/)

其中,參數index表示要刪除的元素對應的索引,其默認值是-1,即默認刪除的是列表中最後一個元素。pop()方法的返回值是要刪除的元素值。

2.2.2 相關代碼

使用pop()方法刪除列表中元素的相關代碼如下所示:

>>> list1
[1, 3, 4, 5, 2]
>>> a = list1.pop()
>>> print(a)
2
>>> print(list1)
[1, 3, 4, 5]

其中,pop()沒有指定要刪除元素的索引值,因此默認刪除的是列表中的最後一個元素,並且將該元素保存在了變量a中。指定要刪除元素索引值的代碼如下所示:

>>> b = list1.pop(1)
>>> print(b)
3
>>> print(list1)
[1, 4, 5]

此時,通過pop()刪除的是列表中索引為1的元素,並將該元素保存在變量b中。

2.2.3 注意事項

通過pop()刪除指定元素時,其索引值不能超過列表中元素的最大索引值,否則程序會顯示異常,代碼如下所示。

>>> list1.pop(4)
Traceback (most recent call last):
  File "<pyshell#15>", line 1, in <module>
    list1.pop(4)
IndexError: pop index out of range
>>>

其中,list1元素的最大索引值是2,此時將pop()方法的參數設置為4,超出了其索引最大值。此時的異常信息為“索引錯誤:pop的索引超出了范圍”。

2.3 使用clear()方法刪除list中元素

clear()方法的作用是刪除list中的所有元素,代碼如下所示。

>>> print(list1)
[1, 4, 5]
>>> list1.clear()
>>> print(list1)
[]

2.4 使用del函數刪除列表中的元素或列表

使用Python的內置函數del也可以刪除列表中的元素或列表。

2.4.1 使用del刪除列表中的元素

使用del函數,通過列表名和索引值來刪除列表中指定的元素,代碼如下所示。

>>> list1 = [1,2,3,4,5]
>>> del list1[1]
>>> print(list1)
[1, 3, 4, 5]

2.4.2 使用del刪除列表

可以使用del函數刪除整個列表,代碼如下所示。

>>> del list1
>>> print(list1)
Traceback (most recent call last):
  File "<pyshell#30>", line 1, in <module>
    print(list1)
NameError: name 'list1' is not defined. Did you mean: 'list'?

其中,del不但將list1中元素全部刪除,而且還刪除掉了list1本身。此時打印list1中元素時,錯誤信息為“名稱錯誤:list1沒有定義”。


  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved