簡體   English   中英

解耦包含列表作為特定鍵的值的字典

[英]Decouple dictionary that contains a list as a value for a particular key

假設我在 Python 中有一個遵循以下結構的字典:

dict_a = {"a": [1,2,3]}

我想生成一個 output 以在 3 個單獨的字典列表中“解耦dict_a ,例如

>>> [{"a": 1}, {"a": 2}, {"a": 3}]

我現在擁有的是:

dict_a = {"a": [1,2,3]}
result = []

for key, values in dict_a.items():
    for value in values:
        result.append({key: value})

print(result)
>>> [{"a": 1}, {"a": 2}, {"a": 3}]

有沒有辦法通過列表理解或dict相關方法來實現這種或類似的“解耦”行為?

雖然 for 循環非常 pythonic 且可讀性強,但同樣可以通過理解來實現:

dict_a = {"a": [1,2,3]}
result = [{k: v} for k, vs in dict_a.items() for v in vs]

暫無
暫無

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

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