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

Python에서 JSON을 구문 분석하는 방법

Python에서 JSON을 구문 분석하는 방법. 먼저 json.load() 메서드를 사용하여 JSON 파일을 로드합니다. 결과는 Python 사전입니다. 그런 다음 사전 메서드를 사용하여 필드에 액세스할 수 있습니다.

JSON은 가벼운 데이터 교환 형식입니다.

JSON 파일 또는 JSON 응답에서 정보를 추출하려면 데이터를 구문 분석해야 합니다.

Python에서 JSON 구문 분석

이 예에서는 다음 JSON을 사용합니다.

{
   "store":{
      "book":[
         {
            "category":"reference",
            "author":"Nigel Rees",
            "title":"Sayings of the Century",
            "price":8.95
         },
         {
            "category":"fiction",
            "author":"Evelyn Waugh",
            "title":"Sword of Honour",
            "price":12.99
         }
      ],
      "bicycle":{
         "color":"red",
         "price":19.95
      }
   },
   "expensive":10
}

첫 번째 단계는 Python에서 JSON 파일을 로드하는 것입니다.

import json

with open('store.json') as json_file:
    data = json.load(json_file)
print(data)

JSON 파일은 이제 data에 저장됩니다. 변수.

print 메소드는 위의 JSON만 출력합니다.

참고:위의 방법은 JSON을 python 사전으로 저장합니다. . print(type(data)) 유형을 인쇄하여 이를 확인할 수 있습니다.

JSON 튜토리얼 - JavaScript에서 JSON을 사용하는 방법 배우기

Python에서 JSON을 구문 분석하는 방법

JSON에서 특정 데이터 추출

이제 JSON을 Python 사전으로 사용하므로 key를 나타내는 필드를 지정하여 특정 데이터를 가져올 수 있습니다. 사전에서.

예를 들어 위의 JSON에서 자전거 가격을 가져오려면 다음을 사용합니다.

print(data['store']['bicycle']['price'])

출력:

19.95

JSON 배열에서 데이터 추출

위의 JSON 예시에서 "book" 필드는 JSON 배열입니다.

인덱스 표기법을 사용하여 특정 항목을 가져올 수 있습니다.

예를 들어 두 번째 책의 이름을 얻으려면 다음을 사용합니다.

print(data['store']['book'][1]['title'])

출력:

Sword of Honour

JSON의 조건부 파싱

가격이 10.00 이하인 모든 책을 가져오려고 한다고 가정합니다.

그런 다음 다음을 사용합니다.

books = data['store']['book']
for book in books:
    if book['price'] <= 10.00:
        print(book)

출력:

{'category': 'reference', 'author': 'Nigel Rees', 'title': 'Sayings of the Century', 'price': 8.95}

결론

이번 포스트에서는 Python에서 JSON을 구문 분석하는 방법을 살펴보았습니다. 여기서 중요한 점은 JSON 파일이 로드되면 Python 사전으로 저장된다는 것입니다. 사전이 있으면 일반 사전 메서드를 사용하여 JSON에서 특정 값을 추출할 수 있습니다.