Python에서 JSON을 사전으로 변환

Hemank Mehtani 2021년10월22일
Python에서 JSON을 사전으로 변환

JSON은 JavaScript Object Notation이며 데이터 저장 및 전송에 사용됩니다. Python 프로그래밍 언어는 json이라는 내장 라이브러리 패키지를 통해 JSON을 지원합니다. 그 형식은 Python의 사전이나 목록과 매우 유사합니다.

이 자습서에서는 JSON 문자열을 Python의 사전으로 변환합니다.

json.load() 함수는 JSON 문자열을 구문 분석하는 데 사용됩니다. 이 함수가 반환하는 최종 유형은 읽고 있는 JSON 데이터 유형에 따라 다릅니다. 대괄호가 있는 곳마다 데이터를 목록으로 읽습니다. 중괄호를 만나면 최종 유형은 사전에 있습니다.

아래 코드를 참조하십시오.

import json

j_data = """
          {
              "0":{
                  "Name": "Nick",
                  "Age": "22"
              },
              "1":{
                  "Name": "Hemank",
                  "Age": "21"
              },
              "2":{
                  "Name": "Sam",
                  "Age":"25"
              }
          }
    """

d = json.loads(j_data)
print(d)
print(d["0"]["Name"])
print(d["1"]["Age"])

출력:

{'0': {'Name': 'Nick', 'Age': '22'}, '1': {'Name': 'Hemank', 'Age': '21'}, '2': {'Name': 'Sam', 'Age': '25'}}
Nick
21

위의 예에서 JSON 데이터의 형식을 확인하십시오. 중괄호로 묶여 있습니다. 이것이 최종 출력이 사전의 형태인 이유입니다. 또한 사전을 탐색하고 개별 값에 액세스하기 위해 키를 사용했습니다.

그러나 데이터가 대괄호로 묶인 경우 json.loads() 함수는 목록의 데이터를 읽습니다. 목록에서 사전 요소를 선택할 수 있습니다.

예를 들어,

import json

j_data = """
          [{
              "0":{
                  "Name": "Nick",
                  "Age": "22"
              },
              "1":{
                  "Name": "Hemank",
                  "Age": "21"
              },
              "2":{
                  "Name": "Sam",
                  "Age":"25"
              }
          }
          ]
    """

d = json.loads(j_data)
print(d[0])

출력:

{'0': {'Name': 'Nick', 'Age': '22'}, '1': {'Name': 'Hemank', 'Age': '21'}, '2': {'Name': 'Sam', 'Age': '25'}}

JSON 데이터의 약간의 변화에 ​​주목하십시오. 마지막 유형은 목록입니다. 이것이 사전인 첫 번째 요소를 추출하는 이유입니다. 마찬가지로 개별 키를 사용하여 사전을 탐색하고 다른 값에 액세스할 수 있습니다.

관련 문장 - Python JSON

관련 문장 - Python Dictionary