這篇文章主要介紹python對列表中的元素進行去重操作的方法,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
1.案例要求
""" 有列表:["a","a","a","b","b","c","d","d","f"], 要求去除重復的列表數(shù)據(jù),達到效果["a","b","c","d","f"] """
2.案例分析:
(1)集合可以去重,列表轉(zhuǎn)為集合,再轉(zhuǎn)回列表。隱患:集合無序,索引會變。
(2)第一步:引入一個臨時空列表,遍歷元素列表,如果元素不在臨時列表,就加到臨時列表,如果臨時列表已經(jīng)有該元素,則不做操作。最后打印新列表即為去重后的數(shù)據(jù)。
# 方法一:利用集合去重,不推薦,因為順序會亂 list1 = ["a","a","a","b","b","c","d","d","f"] list1 = list(set(list1)) # 先將list1轉(zhuǎn)化為set集合去重,再將集合轉(zhuǎn)化為列表 print(list1) # 方法二:定義臨時空列表,遍歷原始列表,保存不重復的元素,最后打印臨時列表。 list2 = ["a","a","a","b","b","c","d","d","f"] temp_list = [] # 定義一個臨時空列表,用于保存臨時數(shù)據(jù)。 for i in list2: # 遍歷原列表,判斷如果元素不在臨時列表,就追加進去,如果在,就不加。 if i not in temp_list: temp_list.append(i) print(temp_list) # 方法三:雙重循環(huán),外層循環(huán)遍歷列表,內(nèi)存循環(huán)控制刪除重復元素的次數(shù)。如果元素個數(shù)統(tǒng)計大于1,則執(zhí)行刪除。 list3 = ["a","a","a","b","b","c","d","d","f"] list3.reverse() # 先反轉(zhuǎn)列表,從后往前刪 for i in list3: # 外層循環(huán)控制每次需要判定的元素 for _ in range(list3.count(i)): # 內(nèi)層循環(huán)控制每次執(zhí)行刪除元素的次數(shù),循環(huán)多次就徹底刪除。 if list3.count(i) > 1: list3.remove(i) # 如果該元素個數(shù)大于1,則執(zhí)行刪除操作 list3.reverse() # 最后再反轉(zhuǎn)列表,保證第一次出現(xiàn)的元素順位保留下來 print(list3)
以上是“python對列表中的元素進行去重操作的方法”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
本文標題:python對列表中的元素進行去重操作的方法-創(chuàng)新互聯(lián)
網(wǎng)頁鏈接:http://sd-ha.com/article46/podeg.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站策劃、關(guān)鍵詞優(yōu)化、小程序開發(fā)、云服務器、手機網(wǎng)站建設、動態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)