1. 程式人生 > >Python 刪除列表中的重複資料

Python 刪除列表中的重複資料

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

 

方法1:使用set()

list1=sorted(set(list0),key=list0.index) # sorted output
print( list1)

方法2:使用 {}.fromkeys().keys()

list2={}.fromkeys(list0).keys()
print(list2)

方法3:set()+sort()

list3=list(set(list0))
list3.sort(key=list0.index)
print(list3)

方法4:迭代

list4=[]
for i in list0:
    if not i in list4:
        list4.append(i)
print(list4)

方法5:排序後比較相鄰2個元素的資料,重複的刪除

複製程式碼
def sortlist(list0):
    list0.sort()
    last=list0[-1]
    for i in range(len(list0)-2,-1,-1):
        if list0[i]==last:
            list0.remove(list0[i])
        else:
            last=list0[i]
    return list0


print(sortlist(list0))

 

方法1:使用set()

list1=sorted(set(list0),key=list0.index) # sorted output
print( list1)

方法2:使用 {}.fromkeys().keys()

list2={}.fromkeys(list0).keys()
print(list2)

方法3:set()+sort()

list3=list(set(list0))
list3.sort(key=list0.index)
print(list3)

方法4:迭代

list4=[]
for i in list0:
    if not i in list4:
        list4.append(i)
print(list4)

方法5:排序後比較相鄰2個元素的資料,重複的刪除

複製程式碼
def sortlist(list0):
    list0.sort()
    last=list0[-1]
    for i in range(len(list0)-2,-1,-1):
        if list0[i]==last:
            list0.remove(list0[i])
        else:
            last=list0[i]
    return list0


print(sortlist(list0))