>백엔드 개발 >파이썬 튜토리얼 >사전을 JSON으로 변환할 때 이 일반적인 함정에 주의하세요

사전을 JSON으로 변환할 때 이 일반적인 함정에 주의하세요

DDD
DDD원래의
2024-10-20 21:02:02844검색

When Converting Dictionaries to JSON, Watch Out For This Common Pitfall

사전을 JSON으로 변환할 때의 함정

JSON 데이터로 작업할 때 JSON 개체와 JSON 문자열 표현 간의 차이점을 이해하는 것이 중요합니다. 이러한 구별은 데이터를 조작하고 액세스하는 방법에 영향을 미칩니다.

제공된 코드에서:

import json

r = {'is_claimed': 'True', 'rating': 3.5}
r = json.dumps(r)
file.write(str(r['rating']))

이 문제는 json.dumps()를 사용한 후 데이터에 액세스하려는 시도에서 발생합니다. 결과 문자열의 키입니다. json.dumps()는 사전을 JSON 객체 자체가 아닌 JSON 객체의 문자열 표현으로 변환합니다. 즉, 문자열에서 JSON 개체의 속성에 직접 액세스할 수 없습니다.

이 문제를 해결하려면 json.loads()를 사용하여 문자열을 다시 JSON 개체로 변환해야 합니다. 이를 통해 점 표기법이나 키-값 쌍을 사용하여 JSON 개체의 속성에 액세스할 수 있습니다.

<code class="python">import json

r = {'is_claimed': 'True', 'rating': 3.5}
r = json.dumps(r)  # Converts to a JSON string
loaded_r = json.loads(r)  # Converts back to a JSON object
print(loaded_r['rating'])  # Accesses the 'rating' property</code>

이 수정된 코드에서는 먼저 json.dumps()를 사용하여 사전을 문자열로 변환합니다. 그런 다음 json.loads()를 사용하여 문자열을 다시 JSON 객체로 변환합니다. 이제 친숙한 점 표기법을 사용하여 '등급' 속성에 액세스할 수 있습니다.

위 내용은 사전을 JSON으로 변환할 때 이 일반적인 함정에 주의하세요의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.