>백엔드 개발 >파이썬 튜토리얼 >Python 사전에서 JSON 데이터에 액세스할 때 오류를 방지하는 방법

Python 사전에서 JSON 데이터에 액세스할 때 오류를 방지하는 방법

Barbara Streisand
Barbara Streisand원래의
2024-10-20 21:07:02552검색

How to Avoid Errors When Accessing JSON Data from Python Dictionaries

Python을 사용한 JSON 인코딩/디코딩

원활한 데이터 교환 및 저장을 위해 Python 사전을 JSON(JavaScript Object Notation)으로 변환하는 것이 일반적입니다. 요구 사항. 그러나 사전에서 JSON 데이터에 액세스하려고 하면 예기치 않은 오류가 발생할 수 있습니다.

발생한 오류:

다음 코드 조각을 고려하세요.

<code class="python">r = {'is_claimed': 'True', 'rating': 3.5}
r = json.dumps(r)
file.write(str(r['rating']))</code>

JSON 문자열에서 '등급' 키에 액세스하려고 하면 "TypeError: 문자열 인덱스는 문자열이 아닌 정수여야 합니다." 오류가 발생합니다. 이 오류는 json.dumps()가 사전 'r'을 실제 JSON 객체나 사전이 아닌 문자열로 변환하기 때문에 발생합니다.

올바른 접근 방식:

해결 방법 이 문제는 json.loads() 메서드를 활용하여 JSON 문자열을 사전에 다시 로드합니다. 이를 통해 다음과 같이 '등급' 키에 액세스할 수 있습니다.

<code class="python">import json

r = {'is_claimed': 'True', 'rating': 3.5}
r = json.dumps(r)
loaded_r = json.loads(r)
print(loaded_r['rating'])</code>

구별 이해:

json.dumps()는 사전을 문자열로 저장합니다. json.loads()는 이를 사전으로 검색합니다. 데이터를 직렬화할 때는 json.dumps()를 사용하고, 역직렬화할 때는 json.loads()를 사용하는 것을 잊지 마세요.

위 내용은 Python 사전에서 JSON 데이터에 액세스할 때 오류를 방지하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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