簡體   English   中英

如何將列表項作為值添加到字典中

[英]How to add the list items to a dictionary as value

我有一個 Python 字典如下:

{
    "ABC": "32066",
    "XYZ": "4413",
    "CCC": "4413",
    "DDD": "32064",
}

對於鍵"ABC" ,我有列表['wood', 'missi'] ,如果不存在任何值,那么我們需要分配空值。 預期的 output 如下:

{
    "ABC": ["32066", "wood", "missi"],
    "XYZ": ["4413", null],
    "CCC": ["4413", null],
    "DDD": ["32064", null],
}

基本上,您想要編輯字典值以包含兩個項目的列表。 第一項已經是值本身,第二項應該來自列表。 每當列表完成提供項目時,您都希望獲得None 您可以使用itertools.zip_longest

from itertools import zip_longest
from pprint import pprint

d = {
    "ABC": "32066",
    "XYZ": "4413",
    "CCC": "4413",
    "DDD": "32064",
}
lst = ["wood", "missi"]


for (k, v), item in zip_longest(d.items(), lst, fillvalue=None):
    d[k] = [v, item]

pprint(d, sort_dicts=False)

output:

{'ABC': ['32066', 'wood'],
 'XYZ': ['4413', 'missi'],
 'CCC': ['4413', None],
 'DDD': ['32064', None]}

注意1:記住你不能在字典中有兩個相同的鍵,下一個會覆蓋前一個。

注 2:在 Python 中我們None ,而不是 null。

暫無
暫無

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

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