Mam listę słowników, wyglądających mniej więcej tak:
list = [{'id': 123, 'data': 'qwerty', 'indices': [1,10]}, {'id': 345, 'data': 'mnbvc', 'indices': [2,11]}]
i tak dalej. Na liście może znajdować się więcej dokumentów. Muszę przekonwertować je na jeden dokument JSON, który można zwrócić w butelce, i nie mogę zrozumieć, jak to zrobić. Proszę pomóż. Widziałem podobne pytania na tej stronie, ale nie mogłem zrozumieć tam rozwiązań.
python
json
list
dictionary
Apoorv Ashutosh
źródło
źródło
import json list = [{'id': 123, 'data': 'qwerty', 'indices': [1,10]}, {'id': 345, 'data': 'mnbvc', 'indices': [2,11]}]
Napisz do pliku json:
with open('/home/ubuntu/test.json', 'w') as fout: json.dump(list , fout)
Przeczytaj plik Json:
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]}]
źródło
response_json = ("{ \"response_json\":" + str(list_of_dict)+ "}").replace("\'","\"") response_json = json.dumps(response_json) response_json = json.loads(response_json)
źródło
Aby przekonwertować go na pojedynczy słownik z określoną wartością kluczy, możesz użyć poniższego kodu.
data = ListOfDict.copy() PrecedingText = "Obs_" ListOfDictAsDict = {} for i in range(len(data)): ListOfDictAsDict[PrecedingText + str(i)] = data[i]
źródło