我有两个列表,如下所示。我想使用旧列表更新新列表。更新新列表的标准是在旧列表中匹配
预期输出
name
的值。最好的方法是什么?
输入
old_list = [{'age': 35, 'name': 'james'}, {'age': 42, 'name': 'bob'}]
new_list = [{'name': 'peter'}, {'name': 'james'}, {'age': 50, 'name': 'bob'}]
预期输出
[{'name': 'peter'}, {'age': 35, 'name': 'james'}, {'age': 42, 'name': 'bob'}]
编辑:添加我的解决方案
我知道一种解决此问题的方法,需要使用多个循环和if条件语句。这不是完整的解决方案,因为我还需要处理多种情况,例如键不存在等。
for x in new_col_list:
for y in old_col_list:
if x['name'] == y['name']:
x['age'] = y['age']
continue
print new_col_list