"json.dumps"가있는 JSON 객체의 주문 외 객체에서 "&&&]
코드에서"JSON은 "JSON을 사용하고 있습니다. .dumps "사전 목록을 JSON으로 변환합니다. 그러나 각 사전 내의 키 순서는 예상대로 아님을 알았습니다. 구체적으로 "ID", "이름"및 "TimeZone"순서대로 나타나야합니다.
추론
두 Python Dictionaries (Python 전 전 3.7) 및 JSON 객체는 정렬되지 않은 컬렉션입니다. 이것은 사전 또는 JSON 객체에서 키의 순서가 보장되지 않음을 의미합니다.
솔루션 1 : 정렬 키
import json
countries.append({"id":row.id,"name":row.name,"timezone":row.timezone})
print(json.dumps(countries, sort_keys=True))
import json Country.append ({ "id": row.id, "name": row.name, "timezone": row.timezone}) print (json.dumps (국가, sort_keys = true))
[ {"id": 1, "name": "Mauritius", "timezone": 4}, {"id": 2, "name": "France", "timezone": 2}, {"id": 3, "name": "England", "timezone": 1}, {"id": 4, "name": "USA", "timezone": -4} ]
[ { "id": 1, "name": "Mauritius", "Timezone": 4}, { "id": 2, "이름": "프랑스", "Timezone": 2}, { "id": 3, "이름": "England", "Timezone": 1}, { "id": 4, "name": "USA", "Timezone": -4} ]
솔루션 2 : OrderedDict 사용
from collections import OrderedDict
countries_by_id = OrderedDict()
countries_by_id["id"] = row.id
countries_by_id["name"] = row.name
countries_by_id["timezone"] = row.timezone
print(json.dumps(countries_by_id))
컬렉션 import orderedDict에서 country_by_id = orderedDict () Country_BY_ID
= row.id country_by_id = row.name Country_by_id = row.timezone print (json.dumps (country_by_id))
이것은 "id", "name"및 "timezone"순서대로 키와 함께 json을 출력합니다.
countries = {"id": row.id, "name": row.name, "timezone": row.timezone}
출력 json에서 키의 순서를 자동으로 보존합니다.
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3