python list列表中刪除多個重複元素

2021-08-18 19:42:35 字數 936 閱讀 4075

我們以下面這個list為例,刪除其中所有值為6的元素:

l=[9,6

,5,6

,6,7

,8,9

,6,0

] 首先嘗試remove方法:

l.remove(6)

print(l)

結果為[9, 5, 6, 6, 7, 8, 9, 6, 0],只刪除了第乙個為6的元素。

如果採用for迴圈遍歷各元素:

for x in l:

if x == 6:

l.remove(x)

結果為[9, 5, 7, 8, 9, 6, 0],後面的6沒有刪除。主要因為remove改變了list長度和每乙個元素的位置。

採用del語句需要找到元素對應下標del l[1]。應用for迴圈改變下標比較混亂,所以使用while迴圈:

length=len(l)

x=0while x < length:

if l[x] == 6:

# l.remove(l[x])

del l[x]

x -= 1

length -= 1

x += 1

結果為[9, 5, 7, 8, 9, 0],刪除了列表中所有的6。另外將del l[x]改為l.remove(l[x])也可以。

補充:最近發現了numpy的unique()函式可以去除列表中所有重複元素且將列表元素從小到大排序:

import numpy as np

l=[9,6,5,6,6,7,8,9,6,0]

a = np.unique(l)

print(a)

print(a)結果為[0 5 6 7 8 9]。l和a型別不同,前者是'list',後者是'numpy.ndarray'。

Python list列表4種刪除元素

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

Python list(列表)實踐

列表常用操作 1.先建立個商品列表 product iphone xiaomi meizu 2.列印列表 product iphone xiaomi meizu 3.追加乙個元素 product.append samsung product iphone xiaomi meizu samsung 4...

python list列表 元組

一.切片 1.切片取值list 顧頭不顧尾 2.如果第乙個範圍不寫的話,從第乙個元素開始取,預設的是0 3.如果切片的的範圍不寫的話代表去到結尾 4.開頭和結尾的下標都不寫的話,代表去整個list 5.1代表最後乙個元素 6.切片同樣應用於字串 2.列表分片的步長 隔幾個取一次 步長為負數時,相當於...