2016-10-22 85 views
-2

我想追加user_iduser_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

mmmmmmmm,我不明白你为什么要问这样的问题,你已经有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

谢谢。哇,与JavaScript相比,Python非常漂亮,简单。遗憾的是它不是浏览器的默认脚本语言。 – alexchenco

相关问题