簡體   English   中英

如何將具有公共鍵值對的字典列表轉換為以鍵為公共值的新字典?

[英]How do i convert the list of dicts having common key value pair to a new dict with keys as the common value?

我有這個列表有多個字典,但每個字典都有一個公共鍵,我想通過它創建一個新的字典,如下所示list = [{"local_id":1,"id":29,"name":"Ashish"},{"local_id":2,"id":29,"name":"Boora"},{"local_id":3,"id":30,"name":"Harshdeep"},{"local_id":4,"id":30,"name":"Singh"},{"local_id":5,"id":31,"name":"Deepak"} ]

這是期望的結果dictionry = { 29:{'details':[{"local_id":1,"id":29,"name":"Ashish"},{"local_id":2,"id":29,"name":"Boora"}]}, 30:{'details':[{"local_id":3,"id":30,"name":"Harshdeep"},{"local_id":4,"id":30,"name":"Singh"}]}, 31:{'details':[{"local_id":5,"id":31,"name":"Deepak"}]} }

使用setdefault並創建 output 字典

result = {}
for item in list:
    result.setdefault(item["id"], {}).setdefault("details", []).append(item)
print(result)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM