【问题标题】:Concatenate values in python dictionnary [duplicate]连接python字典中的值[重复]
【发布时间】:2020-09-04 07:07:54
【问题描述】:

我想更新一个不覆盖的python dict。

应该是这样的:

d1 = {id1 : val1, id2 : val2}
d2 = {id1 : val3, id3 : val4}

d1 + d2 = {id1 : [val1, val3], id2 : [val2], id3 : [val4]}

你有什么想法吗?

【问题讨论】:

标签: python list dictionary merge concat


【解决方案1】:

听起来您需要一个为每个键创建新列表并在必要时附加到它们的函数。

d1 = {'id1' : 'val1', 'id2' : 'val2'}
d2 = {'id1' : 'val3', 'id3' : 'val4'}

def concatDicts(d1,d2):
    dsum = {}
    for key in d1:
        if key not in dsum:
            dsum[key] = [d1[key]]
    for key in d2:
        if key not in dsum:
            dsum[key] = []
        dsum[key].append(d2[key])
    return dsum

d3 = concatDicts(d1,d2)
print(d3)
# d3 = {id1 : [val1, val3], id2 : [val2], id3 : [val4]}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-08
    • 2013-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多