使用Python怎么刪除list中的重復(fù)元素?相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。
創(chuàng)新互聯(lián)是一家專業(yè)提供邱縣企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站設(shè)計、成都做網(wǎng)站、H5技術(shù)、小程序制作等業(yè)務(wù)。10年已為邱縣眾多企業(yè)、政府機構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站建設(shè)公司優(yōu)惠進(jìn)行中。python可以做什么Python是一種編程語言,內(nèi)置了許多有效的工具,Python幾乎無所不能,該語言通俗易懂、容易入門、功能強大,在許多領(lǐng)域中都有廣泛的應(yīng)用,例如最熱門的大數(shù)據(jù)分析,人工智能,Web開發(fā)等。
方法一:是利用map的fromkeys來自動過濾重復(fù)值,map是基于hash的,大數(shù)組的時候應(yīng)該會比排序快點吧
方法二:是用set(),set是定義集合的,無序,非重復(fù)
方法三:是排序后,倒著掃描,遇到已有的元素刪之
#!/usr/bin/python #coding=utf-8 ''' Created on 2012-2-22 Q: 給定一個列表,去掉其重復(fù)的元素,并輸出 ''' def distFunc1(): a=[1,2,4,2,4,5,6,5,7,8,9,0] b={} b=b.fromkeys(a) print b #print b.keys() a=list(b.keys()) print a def distFunc2(): a=[1,2,4,2,4,5,7,10,5,5,7,8,9,0,3] a=list(set(a)) # set是非重復(fù)的,無序集合。可以用list來的排隊對set進(jìn)行排序,list()轉(zhuǎn)換為列表,a.sort來排序 print a def distFunc3(): #可以先把list重新排序,然后從list的最后開始掃描,代碼如下: List=[1,2,4,2,4,5,7,10,5,5,7,8,9,0,3] if List: List.sort() #print List last = List[-1] #print last for i in range(len(List)-2, -1, -1): if last==List[i]: del List[i] else: last=List[i] if __name__ == '__main__': distFunc1() distFunc2() distFunc3()
請寫出一段 Python 代碼實現(xiàn)刪除一個 list 里面的重復(fù)元素
可以先把 list 重新排序,然后從 list 的最后開始掃描,代碼如下:
In [8]: List = [1, 2, 2, 3, 3, 3, 4, 4, 5, 6, 6, 7] In [9]: if List: ...: List.sort() ...: last = List[-1] ...: for i in range(len(List)-2, -1, -1): ...: if last==List[i]: ...: del List[i] ...: else: ...: last=List[i] ...: print(List)
[1, 2, 3, 4, 5, 6, 7]
看完上述內(nèi)容,你們掌握使用Python怎么刪除list中的重復(fù)元素的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!