'dict' objet n'a pas d'attribut 'append' Json
J'ai ce code qui ajoute 50 points pour un utilisateur dans mon fichier json mais je reçois un 'dict' object has no attribute 'append'
lorsque vous essayez d'ajouter de nouveaux utilisateurs pour les utilisateurs:
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)
Quelle est la bonne façon d'ajouter de nouveaux objets/les utilisateurs à users
?
Le code ici... n'a aucun sens. Vous êtes une itération sur les touches qui sont, par définition, déjà en
ajout de stuff à un dict ne pas m'obliger à dire la structure
Vous pas ajouter une liste à un dict. Pas. Possible. Donc, nous avons besoin de comprendre ce que vous en fait, vous voulez faire (par opposition à la chose impossible vouspense vous voulez faire), et pour cela nous avons besoin d'une structure.
Serait encore mieux de description explicite de l'intention ("mes données initiale est X, je veux le modifier pour ressembler à Y").
...Je veux dire, je ne sais même pas ce que vous attendez le résultat de l'ajout d'une liste à un dict. Si c'est ajouter de la valeur, comment obtenir la clé à utiliser? Si c'est une nouvelle clé, où fait-il une valeur? Et si nous ne savons pas ce que vous attendez, comment pouvons-nous vous dire comment obtenir cette chose?
data['users']
, et donc potentiellement d'essayer de les ajouter à data['users']
?ajout de stuff à un dict ne pas m'obliger à dire la structure
Vous pas ajouter une liste à un dict. Pas. Possible. Donc, nous avons besoin de comprendre ce que vous en fait, vous voulez faire (par opposition à la chose impossible vous
Serait encore mieux de description explicite de l'intention ("mes données initiale est X, je veux le modifier pour ressembler à Y").
...Je veux dire, je ne sais même pas ce que vous attendez le résultat de l'ajout d'une liste à un dict. Si c'est ajouter de la valeur, comment obtenir la clé à utiliser? Si c'est une nouvelle clé, où fait-il une valeur? Et si nous ne savons pas ce que vous attendez, comment pouvons-nous vous dire comment obtenir cette chose?
OriginalL'auteur KekMeister Johhny | 2015-11-10
Vous devez vous connecter pour publier un commentaire.
Ce message d'erreur a votre réponse.
https://docs.python.org/2/tutorial/datastructures.html#dictionaries
Si vous voulez ajouter à la liste existante.
Vous devriez être en utilisant une liste pour l'ajout . Dictionnaire a une valeur clé de la paire de clés et doit être unique.
OriginalL'auteur UglyCode
Il semble que
data['users']
est un dictionnaire, de sorte que vous pouvez uniquement utiliser le dictionnaire des méthodes pour ajouter des clés et des valeurs.OriginalL'auteur ham_string