Ich habe eine Liste von Wörterbüchern, die so aussehen:
list = [{'id': 123, 'data': 'qwerty', 'indices': [1,10]}, {'id': 345, 'data': 'mnbvc', 'indices': [2,11]}]
und so weiter. Möglicherweise enthält die Liste weitere Dokumente. Ich muss diese in ein JSON-Dokument konvertieren, das per Flasche zurückgegeben werden kann. Bitte helfen Ich habe ähnliche Fragen auf dieser Website gesehen, aber ich konnte die Lösungen dort nicht verstehen.
verwenden Sie die Json-Bibliothek
import json
json.dumps(list)
Übrigens können Sie die Variablenliste in einen anderen Namen ändern. list
ist die integrierte Funktion für die Listenerstellung. Wenn Sie den Variablennamen nicht ändern, erhalten Sie möglicherweise unerwartetes Verhalten oder fehlerhaften Code.
importieren Sie JSON
list = [{'id': 123, 'data': 'qwerty', 'indices': [1,10]}, {'id': 345, 'data': 'mnbvc', 'indices': [2,11]}]
In JSON-Datei schreiben:
with open('/home/ubuntu/test.json', 'w') as fout:
json.dump(list , fout)
Json-Datei lesen:
with open(r"/home/ubuntu/test.json", "r") as read_file:
data = json.load(read_file)
print(data)
#list = [{'id': 123, 'data': 'qwerty', 'indices': [1,10]}, {'id': 345, 'data': 'mnbvc', 'indices': [2,11]}]
response_json = ("{ \"response_json\":" + str(list_of_dict)+ "}").replace("\'","\"")
response_json = json.dumps(response_json)
response_json = json.loads(response_json)
Um es mit einem bestimmten Schlüsselwert in ein einzelnes Wörterbuch zu konvertieren, können Sie den folgenden Code verwenden.
data = ListOfDict.copy()
PrecedingText = "Obs_"
ListOfDictAsDict = {}
for i in range(len(data)):
ListOfDictAsDict[PrecedingText + str(i)] = data[i]