python list刪除元素是要注意的坑點

2021-08-14 16:46:22 字數 585 閱讀 9841

我們直接先給出輸出與預期不同的**

in[28]: a = [1,2,3,4,5,6]

in[29]: for i in a:

...: a.remove(i)

...:

in[30]: a

out[30]: [2, 4, 6]

在上述for迴圈中,假設我們刪除了index=2的值,原本index=3及之後的值會向前補位,所以在迴圈中就跳過了原index=3的變數

同理,使用list.pop()函式刪除指定元素的時候,也會出現上述情況,如:

in[33]: a = [1,2,3,4,5,6]

in[34]: for index, value in enumerate(a):

...: a.pop(index)

...:

in[35]: a

out[35]: [2, 4, 6]

如果我們想迴圈刪除列表中的元素,較簡單的可用方法有:用乙個臨時列表儲存待刪除的元素,在for迴圈臨時列表來刪除老列表中的元素;或者直接用剩餘元素列表覆蓋原列表

python list 刪除元素

以num list 1,2,2,3,4,5 為例。刪除乙個可以確定的元素,一共有三種方法。1.num list.remove 2 會刪除第乙個值為2的元素。2.num list.pop 1 會彈出索引為1的元素,若不傳引數,則彈出最後乙個元素。3.del num list 1 會刪除索引為1的元素。...

Python list列表4種刪除元素

1,del 根據索引值刪除元素 del 是 python 中的關鍵字,專門用來執行刪除操作,它不僅可以刪除整個列表,還可以刪除列表中的某些元素。我們已經在 python列表 中講解了如何刪除整個列表,所以本節只講解如何刪除列表元素。www.djznrobot.com del 可以刪除列表中的單個元素...

python list刪除元素時的遺漏問題

列表刪除元素可以使用pop,remove。pop的引數為索引,預設情況下刪除最後乙個元素,remove的引數是元素本身。下面介紹使用remove刪除元素時遇到的乙個 奇怪 問題。list test.py實現刪除乙個列表中所有元素 usr bin python檢視結果 python list test...