2016-10-22 6 views
-2

Я пытаюсь добавить user_id к user_blacklist.json:Как добавить элементы в файл, содержащий массив json?

def follow(self, user_id): 
    with open('user_blacklist.json', 'w') as fp: 
    json.dump(user_id, fp) 

user_blacklist.json выглядит следующим образом:

{ 
    "user_blacklist": [ 
     "1691998847", 
     "1691998847", 
     "APPEND_NEW_ID_HERE" 
    ] 
} 

Но как вы можете видеть, я перезаписывать весь файл с user_id, вместо добавления к списку. Я уверен, что это легко, но у меня нет опыта работы с Python.

+1

'data = json.load (...); data ['user_blacklist']. append (user_id); json.dump (data, ...) ' – furas

+2

Mmmmmmmmm, я не понимаю, почему вы задаете такой вопрос, у вас уже есть 14.9K! – pylover

+0

@pylover Просто потому, что у меня 14.9K, это не значит, что я знаю Python. – alexchenco

ответ

1

Вы должны прочитать все json, добавить элемент и сохранить все json.

with open('user_blacklist.json', 'r') as fp: 
    data = json.load(fp) 

data['user_blacklist'].append(user_id) 

with open('user_blacklist.json', 'w') as fp: 
    json.dump(data, fp) 
+0

Спасибо. Wow, Python настолько красив и прост по сравнению с JavaScript. Жаль, что это не язык сценариев по умолчанию для браузера. – alexchenco

 Смежные вопросы

  • Нет связанных вопросов^_^