合并 2 个字典列出其顺序

问题描述 投票:0回答:1

我有这 2 个字典列表:

[{'type': 'excel_macro', 'Name': 'Nuevo Diseño de Registro de nominas.xlsm'}, 
 {'type': 'pdf', 'Name': 'Presentación oferta comercial Nómina.pdf'}
]

[{'id': 35630898}, {'id': 35630899}]

我希望它是这样的:

[{'type': 'excel_macro', 'Name': 'Nuevo Diseño de Registro de nominas.xlsm', 'id': 35630898}, 
 {'type': 'pdf', 'Name': 'Presentación oferta comercial Nómina.pdf', 'id': 35630899}
]

也就是说,我想按顺序合并列表的字典,包括相应字典中的'id'

我一直在寻找如何做到这一点,但我还没有找到确切的方法。我很感激您的帮助。

python list dictionary merge
1个回答
0
投票

有一个方法:

d1 = [{'type': 'excel_macro', 'Name': 'Nuevo Diseño de Registro de nominas.xlsm'}, {'type': 'pdf', 'Name': 'Presentación oferta comercial Nómina.pdf'}]
d2 = [{'id': 35630898}, {'id': 35630899}]

def merge(d1, d2):
    '''Return a merge of the keys/values of d1 and d2 as a new dictionary.'''
    r = d1.copy()
    r.update(d2)
    return r

result = [merge(a, b) for a, b in zip(d1,d2)]
print(result)

输出:

[{'type': 'excel_macro', 'Name': 'Nuevo Diseño de Registro de nominas.xlsm', 'id': 35630898}, {'type': 'pdf', 'Name': 'Presentación oferta comercial Nómina.pdf', 'id': 35630899}]
© www.soinside.com 2019 - 2024. All rights reserved.