python:對list去重

一、set()方法app

numbers = [1,7,3,2,5,6,2,3,4,1,5]
new_numbers = list(set(numbers))
print new_numbers

輸出spa

[1, 2, 3, 4, 5, 6, 7]code

特色:不保證原有順序blog

二、原始方法索引

numbers = [1,7,3,2,5,6,2,3,4,1,5]
new_numbers = []
for x in numbers:
    if x not in new_numbers:
       new_numbers.append(x)
print(new_numbers)

特色:直觀,原有順序不變class

三、set()方法,保持原有順序方法

numbers = [1,7,3,2,5,6,2,3,4,1,5]
new_numbers = list(set(numbers))
new_numbers.sort(key=numbers.index)
print(new_numbers)

特色:將列表轉化爲集合再轉化爲列表,利用集合的自動去重功能。簡單快速。缺點是:使用set方法沒法保證去重後的順序。
可是,能夠經過列表中索引(index)的方法保證去重後的順序不變。sort

相關文章
相關標籤/搜索