Я хочу ответ json от xml_parser
view.I получаю только один dict вместо нескольких dict .. кажется, моя логика цикла неправильная .. вы можете исправить это для меня ..?python for loop not return multiple dict
def xml_parser(request):
for child in root.findall('GetAll'):
for geoloc in child.iter('loc'):
geoinfo = geoloc.attrib
pprint.pprint(geoinfo)
jsoninfo = json.dumps(geoinfo, ensure_ascii=False)
return HttpResponse(jsoninfo, content_type='application/json')
Хорошо, теперь pprint шоу, и это точный выход я хочу
{'lat': '36.15900011', 'lon': '-115.17205183'}
{'lat': '36.15899561', 'lon': '-115.17276155'}
но гиперссылка http://127.0.0.1:8000/parser
показывает {"lat": "36.15899561", "lon": "-115.17276155"}
А может я знаю, почему?
Вы не можете получить этот точный вывод, потому что это недействительно JSON. Действительным JSON должна быть одна вещь - число, объект, массив и т. Д. - не две отдельные вещи. Ближайшим к тому, что вы хотите, будет массив, в котором есть эти два объекта, но это не будет (или 'pprint' как) то же самое, что вы выводите. – abarnert