您好,登錄后才能下訂單哦!
這篇文章主要介紹python對列表中的元素進行去重操作的方法,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
1.案例要求
""" 有列表:["a","a","a","b","b","c","d","d","f"], 要求去除重復的列表數據,達到效果["a","b","c","d","f"] """
2.案例分析:
(1)集合可以去重,列表轉為集合,再轉回列表。隱患:集合無序,索引會變。
(2)第一步:引入一個臨時空列表,遍歷元素列表,如果元素不在臨時列表,就加到臨時列表,如果臨時列表已經有該元素,則不做操作。最后打印新列表即為去重后的數據。
# 方法一:利用集合去重,不推薦,因為順序會亂 list1 = ["a","a","a","b","b","c","d","d","f"] list1 = list(set(list1)) # 先將list1轉化為set集合去重,再將集合轉化為列表 print(list1) # 方法二:定義臨時空列表,遍歷原始列表,保存不重復的元素,最后打印臨時列表。 list2 = ["a","a","a","b","b","c","d","d","f"] temp_list = [] # 定義一個臨時空列表,用于保存臨時數據。 for i in list2: # 遍歷原列表,判斷如果元素不在臨時列表,就追加進去,如果在,就不加。 if i not in temp_list: temp_list.append(i) print(temp_list) # 方法三:雙重循環,外層循環遍歷列表,內存循環控制刪除重復元素的次數。如果元素個數統計大于1,則執行刪除。 list3 = ["a","a","a","b","b","c","d","d","f"] list3.reverse() # 先反轉列表,從后往前刪 for i in list3: # 外層循環控制每次需要判定的元素 for _ in range(list3.count(i)): # 內層循環控制每次執行刪除元素的次數,循環多次就徹底刪除。 if list3.count(i) > 1: list3.remove(i) # 如果該元素個數大于1,則執行刪除操作 list3.reverse() # 最后再反轉列表,保證第一次出現的元素順位保留下來 print(list3)
以上是“python對列表中的元素進行去重操作的方法”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。