首頁 > 後端開發 > Python教學 > 如何在 Python 中刪除清單中的重複項,同時保持原始順序?

如何在 Python 中刪除清單中的重複項,同時保持原始順序?

Barbara Streisand
發布: 2024-12-23 07:01:07
原創
805 人瀏覽過

How Can I Remove Duplicates from a List While Maintaining Original Order in Python?

在保留列表順序的同時處理重複項

處理包含重複元素的列表時,通常需要在保持原始順序的同時刪除它們。使用集合來實現這一點,因為它忽略了原始序列。然而,Python 提供了幾種在刪除重複項的同時保留順序的替代方法。

內建函數與 Python 習慣用語

  • Peter Be 的基準: https://www.peterbe.com/plog/uniqifiers-benchmark
  • 最快的解決方案:
def f7(seq):
    seen = set()
    seen_add = seen.add
    return [x for x in seq if not (x in seen or seen_add(x))]
登入後複製

此解決方案將saw .add 分配給saw_add為了提高效率,由於Python 的動態語言,在循環迭代期間重複呼叫saw.add可能會帶來性能開銷大自然。

  • 訂購套餐(食譜): https://code.activestate.com/recipes/528878-ordered-set/
  • 訂購套裝屬性:

    • O(1)插入、刪除和成員檢查操作
  • 注意: 使用 "或」在上面的程式碼中的 saw.add之後只是一種嘗試集合更新的機制,而不是邏輯的重要部分

透過利用這些方法,開發者可以在不犧牲原始順序的情況下從列表中刪除重複元素,滿足特定的數據操作場景。

以上是如何在 Python 中刪除清單中的重複項,同時保持原始順序?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板