반응형
이 JSON 출력은 MongoDB 집계 쿼리에서 가져온 것입니다. 기본적으로 중첩 된 데이터 JSON을 ' total'
및 '_ id'
값까지 다음과 같이 구문 분석해야합니다.
{
'ok': 1.0,
'result': [
{
'total': 142250.0,
'_id': 'BC'
},
{
'total': 210.88999999999996,
'_id': 'USD'
},
{
'total': 1065600.0,
'_id': 'TK'
}
]
}
필요한 것을 얻기 위해 5 가지 다른 기술을 시도했지만 json
및 simplejson
모듈을 사용하여 문제가 발생했습니다.
이상적으로 출력은 다음과 같습니다.
142250.0, BC
210.88999999999996, USD
1065600.0, TK
해결 방법
참고 : MongoDB의 JSON 응답은 실제로 유효하지 않습니다. JSON에는 작은 따옴표 ( '
)가 아니라 큰 따옴표 ( "
)가 필요합니다.
왜 귀하의 응답에 큰 따옴표 대신 작은 따옴표가 있는지 잘 모르겠지만 모양을 보면 대체 할 수 있으며 내장 된 json
모듈을 사용할 수 있습니다.
from __future__ import print_function
import json
response = """{
'ok': 1.0,
'result': [
{
'total': 142250.0,
'_id': 'BC'
},
{
'total': 210.88999999999996,
'_id': 'USD'
},
{
'total': 1065600.0,
'_id': 'TK'
}
]
}"""
# JSON requires double-quotes, not single-quotes.
response = response.replace("'", '"')
response = json.loads(response)
for doc in response['result']:
print(doc['_id'], doc['total'])
참조 페이지 https://stackoverflow.com/questions/19729710
반응형
'파이썬' 카테고리의 다른 글
파이썬 Center-/middle-align text with PIL? (0) | 2021.01.03 |
---|---|
파이썬 Pandas 데이터 프레임 / 시리즈 데이터를 그림으로 저장하는 방법은 무엇입니까? (0) | 2021.01.03 |
파이썬 PHP에서 Python 스크립트 실행 (0) | 2021.01.03 |
파이썬 항목의 길이가 다른 사전에서 데이터 프레임 만들기 (0) | 2021.01.03 |
파이썬 혼란스러운 파이썬-문자열을 부동 소수점으로 변환 할 수 없습니다. (0) | 2021.01.03 |
댓글