Python: convertit une liste de dictionnaires python en un tableau d'objets JSON
Je suis en train d'écrire une fonction pour convertir une liste python dans un tableau JSON {"npp":"list_value"}, où "mpn" est la chaîne de valeur dont j'ai besoin pour chaque objet, mais "list_value" est la valeur à partir de la liste python. Je vais utiliser la sortie de cette fonction pour une API de requête get.
part_nums = ['ECA-1EHG102','CL05B103KB5NNNC','CC0402KRX5R8BB104']
def json_list(list):
lst = []
d = {}
for pn in list:
d['mpn']=pn
lst.append(d)
return json.dumps(lst, separators=(',',':'))
print json_list(part_nums)
Cette fonction ne fonctionne pas et renvoie la dernière valeur dans la liste python pour tous les objets JSON:
>[{"mpn":"CC0402KRX5R8BB104"},{"mpn":"CC0402KRX5R8BB104"},{"mpn":"CC0402KRX5R8BB104"}]
Cependant, bien sûr, j'ai besoin de ma fonction pour renvoyer la liste unique des valeurs dans les objets en tant que tels:
>[{"mpn":"ECA-1EHG102"},{"mpn":"CL05B103KB5NNNC"},{"mpn":"CC0402KRX5R8BB104"}]
Ligne de fond est que je ne comprends pas pourquoi cette fonction n'est pas active. J'ai prévu je pourrais ajouter un dictionnaire avec un seul {clé:valeur} paire pour une liste python et il ne serait pas question que tous les dictionnaires ont la même clé, car ils seraient indépendants. Merci pour votre aide.
source d'informationauteur bmjjr
Vous devez vous connecter pour publier un commentaire.
Vous ajoutez exactement le même dictionnaire de la liste. Vous devez créer un nouveau dictionnaire pour chaque élément dans la liste:
Comme expliqué par d'autres (dans les réponses), vous devez créer un dictionnaire pour chaque élément de la liste d'ailleurs vous toujours le même dictionnaire
impression