首頁 >後端開發 >Python教學 >如何消除Python清單中的重複字典?

如何消除Python清單中的重複字典?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-10-27 05:59:03297瀏覽

How to Eliminate Duplicate Dictionaries in a Python List?

從字典清單中刪除重複項

資料集合中的重複可能會妨礙高效的資料處理。在Python程式設計中,字典列表通常用於儲存表格資料。但是,在某些情況下,您可能需要從此類清單中刪除重複的字典。

考慮以下字典列表:

[
    {'id': 1, 'name': 'john', 'age': 34},
    {'id': 1, 'name': 'john', 'age': 34},
    {'id': 2, 'name': 'hanna', 'age': 30},
]

目標是取得僅包含唯一的清單字典,排除重複項。為了實現這一點,我們可以採用一個簡單的方法:

創建一個以ID 作為鍵的臨時字典

  1. 使用列表理解創建一個臨時字典,其中每個字典的鍵是其“id”字段。
  2. 此步驟實質上將每個唯一的「id」值對應到特定字典。

從值中提取唯一字典

  1. 使用values()方法取得臨時字典的值。
  2. 結果是一個唯一字典列表,刪除了重複項。

Python 實作

以下是如何在Python 中實作此方法:

<code class="python">def remove_duplicates_from_dicts(dict_list):
    dict_id_mapping = {v['id']: v for v in dict_list}
    return list(dict_id_mapping.values())

sample_list = [
    {'id': 1, 'name': 'john', 'age': 34},
    {'id': 1, 'name': 'john', 'age': 34},
    {'id': 2, 'name': 'hanna', 'age': 30},
]
print(remove_duplicates_from_dicts(sample_list))</code>

此程式碼將產生以下輸出:

[{'id': 1, 'name': 'john', 'age': 34}, {'id': 2, 'name': 'hanna', 'age': 30}]

透過採用此策略,您可以有效地從清單中刪除重複的字典並獲得僅包含唯一元素的新清單。

以上是如何消除Python清單中的重複字典?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn