Я не знаю, что вы подразумеваете под "переопределить старое значение дублирующимся значением". Если вы имеете в виду просто выбор второго dict
из списка, вы можете:
print({k: [v[1]] for (k, v) in data.items()})
Если идея состоит в том, чтобы обновлять «имя» с более новым значением «id» при перемещении по списку, то возможно:
def merge_records(data):
records = data['message']
users = {}
for record in records:
name = record['name']
id_ = record['id']
users[name] = id_
new_records = []
for name, id_ in users.items():
new_records.append({'name': name, 'id': id_})
return {'message': new_records}
Но , если у вас есть какой-либо контроль над представлением данных, вы можете пересмотреть. Возможно, вам нужна другая структура данных.