最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python列表去重的3種最常用方法

 更新時間:2026年01月08日 09:45:07   作者:愛編程的魚  
本文介紹了Python列表去重的3種常用方法:使用dict.fromkeys()(推薦新手),保留原始順序且代碼簡潔;使用set(),最簡單但不保留順序;封裝成自定義函數(shù),便于復(fù)用,文章通過具體代碼示例演示了每種方法的應(yīng)用,需要的朋友可以參考下

一、為什么要給列表去重?

在真實項目開發(fā)中,我們經(jīng)常遇到 重復(fù)數(shù)據(jù)

  • 從 Excel 導(dǎo)入的用戶名單有重名
  • 爬蟲抓取的熱門文章標題出現(xiàn)重復(fù)
  • 用戶點擊日志里同一按鈕被記錄了多次

如果不及時去重,不僅浪費內(nèi)存,還會導(dǎo)致統(tǒng)計結(jié)果失真。今天小編就帶你用 最接地氣 的方式,學(xué)會 Python 列表去重。

二、方法 1:一行代碼搞定(推薦新手)

核心思路

利用 字典 key 唯一 的特性,把列表元素當(dāng) key,重復(fù)值自動被過濾。

代碼示例

城市列表 = ["北京", "上海", "北京", "廣州", "上海"]
去重后 = list(dict.fromkeys(城市列表))
print("去重結(jié)果:", 去重后)   # 輸出:['北京', '上海', '廣州']

在Python3在線環(huán)境里直接復(fù)制粘貼即可運行,無需安裝任何軟件!

優(yōu)點

  • 代碼最短,適合小白
  • 保留原始順序(Python 3.7+ 字典有序)

三、方法 2:使用 set()(適合不要求順序的場景)

代碼示例

城市列表 = ["北京", "上海", "北京", "廣州", "上海"]
去重后 = list(set(城市列表))
print("去重結(jié)果:", 去重后)   # 順序可能變化,如['上海', '北京', '廣州']

注意

set() 會打亂原順序,如果你不關(guān)心順序,用它最省事。

四、方法 3:寫個函數(shù),復(fù)用更方便(進階)

把方法 1 封裝成函數(shù),以后任何列表都能一鍵去重。

代碼示例(W3Cschool 標準模板)

def 列表去重(任意列表):
    """編程獅推薦:通用去重函數(shù)"""
    return list(dict.fromkeys(任意列表))


# 測試
水果 = ["蘋果", "香蕉", "蘋果", "橙子"]
print(列表去重(水果))   # ['蘋果', '香蕉', '橙子']

五、3 分鐘實戰(zhàn):去除用戶積分排行榜重復(fù)昵稱

假設(shè)你從數(shù)據(jù)庫查到如下數(shù)據(jù):

積分榜 = ["小明", "小紅", "小剛", "小明", "小紅"]

跟著編程獅敲 3 行代碼:

積分榜 = ["小明", "小紅", "小剛", "小明", "小紅"]
唯一榜單 = list(dict.fromkeys(積分榜))
print("排行榜去重后:", 唯一榜單)
# 輸出:['小明', '小紅', '小剛']

把結(jié)果直接回寫到數(shù)據(jù)庫,再也不怕重復(fù)統(tǒng)計啦!

六、常見疑問 FAQ

問題編程獅解答
會不會改變原列表?不會,三種方法都返回新列表,原列表安全。
字典法為什么能保留順序?Python 3.7 起字典有序,dict.fromkeys() 會按第一次出現(xiàn)的順序記錄。
性能哪個最好?數(shù)據(jù)量 <10 萬時三者差異不大;超大數(shù)據(jù)推薦 pandas.drop_duplicates(),我們下期再講。

七、小結(jié)

方法是否保留順序代碼長度推薦指數(shù)
dict.fromkeys()?1 行?????
set()?1 行???
自定義函數(shù)?3 行????

零基礎(chǔ)同學(xué)先掌握 方法 1,工作中 90% 場景夠用!

以上就是Python列表去重的3種最常用方法的詳細內(nèi)容,更多關(guān)于Python列表去重方法的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Python變量賦值與引用之對象是否可變詳解

    Python變量賦值與引用之對象是否可變詳解

    Python的變量賦值是一個復(fù)雜的過程,涉及到內(nèi)存分配、引用計數(shù)、數(shù)據(jù)類型和深淺拷貝等多個方面,這篇文章主要介紹了Python變量賦值與引用之對象是否可變的相關(guān)資料,需要的朋友可以參考下
    2025-05-05
  • Pytorch實現(xiàn)WGAN用于動漫頭像生成

    Pytorch實現(xiàn)WGAN用于動漫頭像生成

    這篇文章主要介紹了Pytorch實現(xiàn)WGAN用于動漫頭像生成,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • Python接口自動化淺析unittest單元測試原理

    Python接口自動化淺析unittest單元測試原理

    這篇文章主要介紹了Python接口自動化淺析unittest單元測試原理,文中描述了單元測試,unittest模塊特性、大致流程、源碼及實戰(zhàn)例子這幾個模塊,有需要的朋友可以借鑒參考下
    2021-08-08
  • Python tornado隊列示例-一個并發(fā)web爬蟲代碼分享

    Python tornado隊列示例-一個并發(fā)web爬蟲代碼分享

    這篇文章主要介紹了Python tornado隊列示例-一個并發(fā)web爬蟲代碼分享,具有一定借鑒價值,需要的朋友可以參考下
    2018-01-01
  • 詳解Python中__new__方法的作用

    詳解Python中__new__方法的作用

    Python類中有些方法名、屬性名的前后都添加__雙下畫線,這種方法、屬性通常屬于Python的特殊方法和特殊屬性。本文將聊聊構(gòu)造方法__new__實際程序的應(yīng)用場景,感興趣的可以了解一下
    2022-03-03
  • 利用Python實現(xiàn)給圖像添加標簽

    利用Python實現(xiàn)給圖像添加標簽

    這篇文章主要為大家詳細介紹了如何利用Python實現(xiàn)給指定的圖片添加標簽,文中的示例代碼講解詳細,具有一定的學(xué)習(xí)價值,需要的可以參考一下
    2023-07-07
  • python encode和decode的妙用

    python encode和decode的妙用

    做網(wǎng)絡(luò)編程的時候,經(jīng)常需要把接收到的數(shù)據(jù)用16進制的方式打印出來,方便查看。今天發(fā)現(xiàn)在Python下有這樣一個簡單的方法。
    2009-09-09
  • Django?ORM?F對象和Q對象查詢

    Django?ORM?F對象和Q對象查詢

    Django提供了兩個非常有用的工具:F對象和Q對象,方便了在一些特殊場景下的查詢過程,這篇文章主要介紹了Django?ORM?F對象和Q對象查詢,需要的朋友可以參考下
    2022-10-10
  • python3.5仿微軟計算器程序

    python3.5仿微軟計算器程序

    這篇文章主要為大家詳細介紹了python3.5仿微軟計算器程序的相關(guān)資料,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-06-06
  • 解決使用pycharm提交代碼時沖突之后文件丟失找回的方法

    解決使用pycharm提交代碼時沖突之后文件丟失找回的方法

    這篇文章主要介紹了解決使用pycharm提交代碼時沖突之后文件丟失找回的方法 ,需要的朋友可以參考下
    2018-08-08

最新評論

松滋市| 临江市| 阿拉善盟| 通化市| 昭苏县| 平利县| 莆田市| 周宁县| 确山县| 德安县| 中山市| 唐河县| 德钦县| 阿拉尔市| 富锦市| 会同县| 商丘市| 邢台县| 彭州市| 阳山县| 阿拉善右旗| 阿拉善盟| 贺兰县| 邳州市| 乐业县| 潜山县| 博乐市| 佛山市| 湘乡市| 北碚区| 密云县| 根河市| 洛隆县| 施秉县| 辉县市| 绥化市| 新乡市| 嵊州市| 金山区| 仙游县| 依安县|