簡體   English   中英

我們如何將帶有鍵值對的列表轉換為字典?

[英]How can we convert list with key value pair into dictionary?

l1=[{"key1":["value1"]},{"key2":["value2"]},{"key3":["value3"]}]

將鍵轉換為值並將值轉換為鍵...

所需的 output 應該是:

d1={"value1":"key1","value2":"key2","value3":"key3"}

使用字典理解

d1 = {v[0]:k for d in l1 for k,v in d.items()}

output: {'value1': 'key1', 'value2': 'key2', 'value3': 'key3'}

請注意,由於字典鍵是唯一的,因此如果您將擁有多次相同的值,這將無法處理。 這只會考慮最后一次出現。

由於每個 sub-dict 只包含一個鍵值對,因此您可以根據固定結構解包 dict 項,並使用 dict 理解重構鍵值對:

{v: k for [(k, [v])] in map(dict.items, l1)}

暫無
暫無

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

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