python List 列表去重方法及效率

2021-10-08 11:34:22 字數 854 閱讀 3099

lis=[1

,7,3

,2,5

,6,2

,3,4

,1,5

]new_lis =

for x in lis:

if x not

in new_lis :

print

(new_lis)

特點:直觀,原有順序不變,但是效率不行。

lis =[1

,7,3

,2,5

,6,2

,3,4

,1,5

]lis =

list

(set

(lis)

)print

(lis)

將列表轉化為集合再轉化為列表,利用集合的自動去重功能。簡單快速。

缺點是:使用set方法無法保證去重後的順序。

但是,可以通過列表中索引(index)的方法保證去重後的順序不變。

lis =[1

,7,3

,2,5

,6,2

,3,4

,1,5

]new_lis =

list

(set

(lis)

)new_lis.sort(key=lis.index)

print

(new_lis)

lis =[1

,2,3

,4,5

,1,2

,3]new_lis =

.fromkeys(lis)

.keys(

)

python list去重方法及效率

1 直觀方法li 1,2,3,4,5,1,2,3 new li for i in li if i not in new li print new li 總結 這樣可以做出來,但是效率不行。但是此方法保證了列表的順序性。2 利用set的自動去重功能li 1,2,3,4,5,1,2,3 li list ...

Python列表去重

標題有語病,其實是這樣的 假設有兩個列表 l1 1,2,3,4 l2 1,2,5,6 然後去掉l1中包含的l2的元素 直接這樣當然是不行的 def removeexists l1,l2 for e1 in l1 if e1 in l2 l1.remove e1 不管什麼語言都不能這麼幹,但是又有一點...

hive 列表去重 Hive 資料去重

實現資料去重有兩種方式 distinct 和 group by 1.distinct消除重複行 distinct支援單列 多列的去重方式。單列去重的方式簡明易懂,即相同值只保留1個。多列的去重則是根據指定的去重的列資訊來進行,即只有所有指定的列資訊都相同,才會被認為是重複的資訊。1 作用於單列 se...