Как я могу изменить/перезаписать значения в dict1 измененными значениями dict2 «на месте»?
Код: Выделить всё
import deepdiff
dict_1 = [{"id": "first", "name": "first"}, {"id": "second", "name": "second"}, {"id": "third", "name": "third"}]
dict_2 = [{"id": "first", "name": "first"}, {"id": "second modified", "name": "second modified"}, {"id": "third", "name": "third"}]
diff = deepdiff.DeepDiff(dict_1, dict_2).get('values_changed',{})
print(diff)
Код: Выделить всё
{"root[1]['id']": {'new_value': 'second modified', 'old_value': 'second'}, "root[1]['name']": {'new_value': 'second modified', 'old_value': 'second'}}
Код: Выделить всё
dict_1 = [{"id": "first", "name": "first"}, {"id": "second modified", "name": "second modified"}, {"id": "third", "name": "third"}]
Если замена «на месте» не работает, вновь созданный dict_3 также подойдет.
Подробнее здесь: https://stackoverflow.com/questions/792 ... t-in-place