Как добавить словарь в файл JSON в Python - PullRequest
0 голосов
/ 14 сентября 2018

У меня файл Json выглядит так:

{"user": ["file1","file2"],"user2": ["file1"]}

Я хочу добавить словарь

{u'user2': [u'file2'],u'user3': [u'file1'], u'user4': [u'file1']}

в файле json, поэтому файл json должен выглядеть как

{"user": ["file1","file2"],"user2": ["file1", "file2"],"user3": ["file1"],"user4": ["file1"]}

из моего текущего подхода

with open ('jsonfile', 'a+') as json_file :
   json.dump(dictionary, json_file)

я получаю файл json как:

{"user": ["file1","file2"]}{"user2": ["file1", "file2"]}{"user3": ["file1"]}{"user4": ["file1"]}

1 Ответ

0 голосов
/ 14 сентября 2018

Использование setdefault

Пример:

d1 = {"user": ["file1","file2"],"user2": ["file1"]}
d2 = {u'user2': [u'file2'],u'user3': [u'file1'], u'user4': [u'file1']}

for k, v in d2.items():
    d1.setdefault(k, []).extend(v)
print(d1)

Выход:

{u'user4': [u'file1'], 'user2': ['file1', u'file2'], 'user': ['file1', 'file2'], u'user3': [u'file1']}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...