參考原文:https://www.the5fire.com/python-remove-duplicates-in-list.html
我們注重客戶提出的每個要求,我們充分考慮每一個細節,我們積極的做好做網站、成都網站制作服務,我們努力開拓更好的視野,通過不懈的努力,創新互聯贏得了業內的良好聲譽,這一切,也不斷的激勵著我們更好的服務客戶。 主要業務:網站建設,網站制作,網站設計,微信小程序開發,網站開發,技術開發實力,DIV+CSS,PHP及ASP,ASP.Net,SQL數據庫的技術開發工程師。
需求:去list進行去重,去重后保證順序不變
ids = [1, 2, 3, 3, 4, 2, 3, 4, 5, 6, 1]
new_ids = []
for id in ids:
if id not in new_ids:
new_ids.append(id)
print("new_ids==>", new_ids)
ids = [1,4,3,3,4,2,3,4,5,6,1]
new_ids = list(set(ids))
print(new_ids)
測試發現去重后不能保證原來的順序
ids = [1, 4, 3, 3, 4, 2, 3, 4, 5, 6, 1]
new_ids = list(set(ids))
new_ids.sort(key=ids.index)
print(new_ids)
ids = [1,4,3,3,4,2,3,4,5,6,1]
func = lambda x,y:x if y in x else x + [y]
reduce(func, [[], ] + ids)
[1, 4, 3, 2, 5, 6]
其中的 lambda x,y:x if y in x else x + [y] 等價于 lambda x,y: y in x and x or x+[y] 。
思路其實就是先把ids變為[[], 1,4,3,......] ,然后在利用reduce的特性
reduce()函數介紹
本文標題:Python對list去重的各種方法
網頁URL:http://vcdvsql.cn/article6/jhisig.html
成都網站建設公司_創新互聯,為您提供軟件開發、ChatGPT、網站導航、品牌網站建設、網站營銷、小程序開發
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯