Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python에서 여러 키/하위 키가 있는 JSON 파일을 어떻게 반복합니까?


Python에서 json 모듈을 사용하여 JSON 파일을 구문 분석할 수 있습니다. 이 모듈은 json을 구문 분석하여 dict에 넣습니다. 그런 다음 일반 dict처럼 이것에서 값을 얻을 수 있습니다. 예를 들어 다음 내용의 json이 있는 경우 -

{
   "id": "file",
   "value": "File",
   "popup": {
      "menuitem": [
         {"value": "New", "onclick": "CreateNewDoc()"},
         {"value": "Open", "onclick": "OpenDoc()"},
         {"value": "Close", "onclick": "CloseDoc()"}
      ]
   }
}

예시

파이썬 프로그램에서 로드하고 다음과 같은 방식으로 키를 반복할 수 있습니다. -

import json
f = open('data.json')
data = json.load(f)
f.close()

# 이제 데이터를 일반 사전으로 사용할 수 있습니다 -

for (k, v) in data.items():
   print("Key: " + k)
   print("Value: " + str(v))

출력

이것은 출력을 제공합니다 -

Key: id
Value: file
Key: value
Value: File
Key: popup
Value: {'menuitem': [{'value': 'New', 'onclick': 'CreateNewDoc()'}, {'value': 'Open', 'onclick': 'OpenDoc()'}, {'value': 'Close', 'onclick': 'CloseDoc()'}]}

하위 값에 대해서도 반복하려면 이 트리와 같은 사전을 반복할 수 있는 재귀 함수를 작성해야 합니다.