首页
/
每日頭條
/
生活
/
python如何用列表删除重複元素
python如何用列表删除重複元素
更新时间:2026-11-03 21:41:02

python如何用列表删除重複元素?列表是一個包含不同Python對象的容器,該對象可以是整數,單詞,值等它等效于其他編程語言中的數組,我來為大家講解一下關于python如何用列表删除重複元素?跟着小編一起來看一看吧!

python如何用列表删除重複元素(DAY6-step4Python從列表List)1

python如何用列表删除重複元素

列表是一個包含不同Python對象的容器,該對象可以是整數,單詞,值等。它等效于其他編程語言中的數組。

因此,這裡将通過不同的方式來從給定列表中删除重複項。

使用Set從列表中删除重複項

要從列表中删除重複項,可以使用内置函數set()。 set()方法的特長在于它返回不同的元素。

我們有一個列表:[1,1,2,3,2,2,4,5,6,2,1]。 列表中有許多重複項,我們需要删除它們并僅取回不同的元素。 該列表将提供給set()内置函數。 稍後,使用list()内置函數顯示最終列表,如下例所示。

我們得到的輸出是不同的元素,其中所有重複元素都被消除了。

my_list = [1,1,2,3,2,2,4,5,6,2,1] my_final_list = set(my_list) print(list(my_final_list))

Output:

[1, 2, 3, 4, 5, 6]

使用臨時列表從列表中删除重複項

要從給定列表中删除重複項,可以使用一個空的臨時列表。 為此,您将必須遍曆具有重複項的列表,并将唯一項添加到臨時列表中。 之後,将臨時列表分配給主列表。

這是一個使用臨時列表的工作示例。

my_list = [1, 2, 3, 1, 2, 4, 5, 4 ,6, 2] print("List Before ", my_list) temp_list = [] for i in my_list: if i not in temp_list: temp_list.append(i) my_list = temp_list print("List After removing duplicates ", my_list)

Output:

List Before [1, 2, 3, 1, 2, 4, 5, 4, 6, 2] List After removing duplicates [1, 2, 3, 4, 5, 6]

使用Dict從列表中删除重複項

通過從集合中導入OrderedDict,我們可以從給定列表中删除重複項。 從python2.7開始可用。 OrderedDict負責按鍵顯示的順序返回不同的元素。

讓我們利用列表,并使用OrderedDict中可用的fromkeys()方法從列表中獲取唯一元素。

要使用OrderedDict.fromkey()方法,必須從集合中導入OrderedDict,如下所示:

from collections import OrderedDict

這是一個使用OrderedDict.fromkeys()方法删除重複項的示例。

from collections import OrderedDict my_list = ['a','x','a','y','a','b','b','c'] my_final_list = OrderedDict.fromkeys(my_list) print(list(my_final_list))

Output:

['a', 'x', 'y', 'b', 'c']

從Python 3.5及更高版本開始,我們可以使用常規的dict.fromkeys()從列表中獲取不同的元素。 dict.fromkeys()方法返回唯一的鍵,并有助于擺脫重複的值。

顯示dict.fromkeys()在列表中以提供唯一項的工作的示例如下:

my_list = ['a','x','a','y','a','b','b','c'] my_final_list = dict.fromkeys(my_list) print(list(my_final_list))

Output:

['a', 'x', 'y', 'b', 'c']

使用for循環從列表中删除重複項

使用for循環,我們将遍曆項目列表以删除重複項。

首先将數組初始化為空,即myFinallist = []。在for循環中,添加檢查列表中的項是否存在于數組myFinallist中。如果不存在,則使用append()将其添加到數組myFinallist中。 方法。

因此,每當遇到重複項時,它将已經存在于數組myFinallist中,并且不會被插入。 現在讓我們在下面的示例中進行檢查:

my_list = [1,2,2,3,1,4,5,1,2,6] myFinallist = [] for i in my_list: if i not in myFinallist: myFinallist.append(i) print(list(myFinallist))

Output:

[1, 2, 3, 4, 5, 6]

使用列表推導(list comprehension)從列表中删除重複項

列表推導是Python函數,用于使用已經創建的序列來創建新序列(例如列表,字典等)。 這可以幫助您減少更長的循環,并使代碼更易于閱讀和維護。

讓我們利用列表推導從給定列表中删除重複項。

my_list = [1,2,2,3,1,4,5,1,2,6] my_finallist = [] [my_finallist.append(n) for n in my_list if n not in my_finallist] print(my_finallist)

Output:

[1, 2, 3, 4, 5, 6]

使用Numpy unique()方法從列表中删除重複項。

Numpy模塊中的unique()方法可以幫助我們從給定列表中删除重複項。

要使用Numpy首先導入numpy模塊,您需要執行以下步驟:

步驟1)導入Numpy模塊

import numpy as np

第2步:将您的列表與唯一方法内的重複項一起使用,如下所示。 使用tolist()方法将輸出轉換回列表格式。

myFinalList = np.unique(my_list).tolist()

步驟3)最後打印清單,如下所示:

print(myFinalList)

最終代碼如下:

import numpy as np my_list = [1,2,2,3,1,4,5,1,2,6] myFinalList = np.unique(my_list).tolist() print(myFinalList)

Output:

[1, 2, 3, 4, 5, 6]

使用Pandas方法從列表中删除重複項

Pandas模塊具有一個unique()方法,該方法将為我們提供給定列表中的唯一元素。

要使用Pandas模塊,您需要執行以下步驟:

步驟1)導入Pandas模塊

import pandas as pd

第2步)将列表與unique()方法中的重複項一起使用,如下所示:

myFinalList = pd.unique(my_list).tolist()

步驟3)打印列表,如下所示:

print(myFinalList)

最終代碼如下:

import pandas as pd my_list = [1,2,2,3,1,4,5,1,2,6] myFinalList = pd.unique(my_list).tolist() print(myFinalList)

Output:

[1, 2, 3, 4, 5, 6]

使用enumerate()和 list comprehension 删除重複項

在這裡,列表推導和枚舉的組合可以删除重複的元素。 枚舉返回一個對象,該對象帶有一個指向列表中每個元素的計數器。 例如(0,1),(1,2)等。這裡的第一個值是索引,第二個值是列表項。

檢查每個元素是否在列表中,如果存在,則将其從列表中删除。

my_list = [1,2,2,3,1,4,5,1,2,6] my_finallist = [i for j, i in enumerate(my_list) if i not in my_list[:j]] print(list(my_finallist))

Output:

[1, 2, 3, 4, 5, 6]

摘要
  • 要從列表中删除重複項,可以使用内置函數set()。 set()方法的特長是它返回不同的元素。
  • 您可以通過從集合中導入OrderedDict從給定列表中删除重複項。 從python2.7開始可用。 OrderedDictdict負責按鍵顯示的順序返回不同的元素。
  • 您可以利用for循環,我們将遍曆項目列表以删除重複項。
  • Numpy模塊中的unique()方法可以幫助我們從給定列表中删除重複項。
  • Pandas模塊具有一個unique()方法,該方法将為我們提供給定列表中的唯一元素。
  • 列表理解和枚舉的組合用于從列表中删除重複的元素。 枚舉返回一個對象,該對象帶有一個指向列表中每個元素的計數器。
,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
阿裡斯頓壁挂采暖爐安裝
阿裡斯頓壁挂采暖爐安裝
目前國内疫情狀況趨于穩定,也迎來了“金三銀四”的裝修時節。有裝修計劃的小夥伴們開始着手準備家裝方案,這其中有關家裝采暖的“功課”自然是繞不開的重頭戲。面對市面上各類采暖解決方案,難免讓人舉棋不定,不知如何取舍。阿裡斯頓ONE系列冷凝壁挂爐帶...
2026-11-03
我的世界豪華沙發教程
我的世界豪華沙發教程
我的世界豪華沙發教程?首先放置兩個床,床的顔色可以根據自己的喜好來定(這裡選用了紫色),讓它們頭朝兩邊放置,下面我們就來聊聊關于我的世界豪華沙發教程?接下來我們就一起去了解一下吧!我的世界豪華沙發教程首先放置兩個床,床的顔色可以根據自己的喜...
2026-11-03
痛風尿酸要吃什麼才能排出呢
痛風尿酸要吃什麼才能排出呢
我們都知道對于痛風的患者在生活中也是非常常見的,一定要記得可以通過飲食的方式去改善我們的身體,那麼痛風的患者到底應該怎麼樣注意飲食才可以保證我們的健康有5個小建議,可以有效的控制尿酸,也可以防止痛風的現象發作的。對于痛風患者,飲食方面給大家...
2026-11-03
互聯網組織結構圖
互聯網組織結構圖
騰訊日前對外發布企業組織架構大調整,新成立雲與智慧産業事業群、平台與内容事業群,并将原七大事業群壓減至六個。這被外界解讀為,騰訊将更重視騰訊雲等面向商業(toB)的業務。騰訊七大事業群變六大9月30日,騰訊宣布了組織架構的新一輪調整。騰訊這...
2026-11-03
白糖溫水泡多久可以吃
白糖溫水泡多久可以吃
現在很多人都知道我們攝入糖分過多的危害,但有一種我們日常經常吃的東西,卻是比“白糖”和“酒精”更可怕的健康殺手!然而我們不知不覺,很多人幾乎天天會吃到!它就是——果葡糖漿,偷偷隐藏在我們經常食用的飲料、酸牛奶、冰激淩、罐頭、果脯、糕點裡。果...
2026-11-03
Copyright 2023-2026 - www.tftnews.com All Rights Reserved