Python List 去除列表中重複的元素

2021-06-23 04:57:20 字數 890 閱讀 5897

比較容易記憶的是用內建的

setl1 = ['b','c','d','b','c','a','a']

l2 = list(set(l1))

print l2

還有一種據說速度更快的,沒測試過兩者的速度差別

l1 = ['b','c','d','b','c','a','a']

l2 = {}.fromkeys(l1).keys()

print l2

這兩種都有個缺點,祛除重複元素後排序變了:

['a', 'c', 'b', 'd']

如果想要保持他們原來的排序:

用list類的sort方法

l1 = ['b','c','d','b','c','a','a']

l2 = list(set(l1))

l2.sort(key=l1.index)

print l2

也可以這樣寫

l1 = ['b','c','d','b','c','a','a']

l2 = sorted(set(l1),key=l1.index)

print l2

也可以用遍歷

l1 = ['b','c','d','b','c','a','a']

l2 =

for i in l1:

if not i in l2:

print l2

上面的**也可以這樣寫

l1 = ['b','c','d','b','c','a','a']

l2 =

print l2

這樣就可以保證排序不變了:

['b', 'c', 'd', 'a']

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.列表分片的步長 隔幾個取一次 步長為負數時,相當於...

python顏色列表 Python list 列表

定義乙個空列表 namelist namelist 小張 小王 小李 list0 3,小鄭 列表中的每一項可以是不同的資料型別 列表的遍歷 for name in namellst print name flag 0 while flag len namelist print flag 將乙個列表連...