'dict'对象没有属性'追加'Json

时间:2015-11-10 22:15:09

标签: python json

我有这个代码,在我的json文件中为用户添加了50分,但在尝试将新用户添加到用户时,我不断获得'dict' object has no attribute 'append'

def updateUsers(chan):
    j = urllib2.urlopen('http://tmi.twitch.tv/group/user/' + chan + '/chatters')
    j_obj = json.load(j)
    with open('dat.dat', 'r') as data_file:
        data = json.load(data_file)
        for dat in data['users']:
            if dat in j_obj['chatters']['moderators'] or j_obj['chatters']['viewers']:
                data['users']['tryhard_cupcake']['Points'] += 50
            else:
                data['users'].append([dat]) # append doesn't work here
    with open('dat.dat', 'w') as out_file:
        json.dump(data, out_file)

将新对象/用户添加到users的正确方法是什么?

2 个答案:

答案 0 :(得分:11)

此错误消息有您的答案。

https://docs.python.org/2/tutorial/datastructures.html#dictionaries

 data['users'] = [dat]

如果要附加到现有列表。

templist = data['users']
templist.extend(dat)
data['users'] = templist

答案 1 :(得分:2)

似乎data['users']是一个字典,所以你只能使用字典方法来添加键和值。