Python: Umwandeln einer Liste von python-dictionaries, um ein array von JSON-Objekten
Ich versuche zu schreiben, eine Funktion zum konvertieren einer python-Liste in ein JSON-array {"mpn":"list_value"} Objekte, bei denen "mpn" ist die wörtliche string-Wert brauche ich für jedes Objekt aber "list_value" ist der Wert aus der python-Liste. Ich verwende die Ausgabe dieser Funktion für eine API-get-Anfrage.
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)
Dieser aktuellen Funktion funktioniert nicht und gibt letzten Wert in der python-Liste für alle JSON-Objekte:
>[{"mpn":"CC0402KRX5R8BB104"},{"mpn":"CC0402KRX5R8BB104"},{"mpn":"CC0402KRX5R8BB104"}]
Aber natürlich muss ich meiner Funktion geben Sie die eindeutige Liste mit Werten in den Objekten als solchen:
>[{"mpn":"ECA-1EHG102"},{"mpn":"CL05B103KB5NNNC"},{"mpn":"CC0402KRX5R8BB104"}]
Bottom line ist, die ich nicht verstehe, warum diese Funktion nicht funktioniert. Ich erwartet, ich konnte fügen Sie ein Wörterbuch mit einer einzigen {Schlüssel:Wert} - paar zu einer python-Liste und es würde keine Rolle, dass alle Wörterbücher haben den gleichen Schlüssel, weil Sie unabhängig sein. Vielen Dank für Ihre Hilfe.
d = {}
zwei Zeilen nach unten, innerhalb der for
InformationsquelleAutor Bob Jordan | 2012-07-03
Du musst angemeldet sein, um einen Kommentar abzugeben.
Fügen Sie die exakt gleiche Wörterbuch zur Liste hinzuzufügen. Erstellen Sie ein neues Wörterbuch für jedes Element in der Liste:
Es funktioniert perfekt.
Genial! Danke!!!
können wir tun, ein reverse ? Konvertierung einer Zeichenkette ist array von json-Objekten zu dict ?
das "Umgekehrt" ist die Konvertierung von json-text, der enthält ein array von json-Objekten in Liste von Wörterbüchern. Ja, können wir:
list_of_dicts = json.loads(json_text)
. Wenn etwas unklar ist, FragenInformationsquelleAutor jfs
Wie bereits erklärt, von anderen (in Antworten) erstellen Sie ein neues Wörterbuch für jedes Element in der Liste, die anderswo verweisen Sie immer das gleiche Wörterbuch
drucken
InformationsquelleAutor Xavier Combelle